<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>پادشاه فلش &#187; Flash Builder</title>
	<atom:link href="http://blog.iflashlord.com/tag/flash-builder/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.iflashlord.com</link>
	<description>دست نوشته های یک پادشاه فلش</description>
	<lastBuildDate>Wed, 11 Jan 2012 12:09:13 +0000</lastBuildDate>
	<language>fa</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>slugify کردن متن در اکشن اسکریپت ۳</title>
		<link>http://blog.iflashlord.com/1390/08/slugify-%da%a9%d8%b1%d8%af%d9%86-%d9%85%d8%aa%d9%86-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3/</link>
		<comments>http://blog.iflashlord.com/1390/08/slugify-%da%a9%d8%b1%d8%af%d9%86-%d9%85%d8%aa%d9%86-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3/#comments</comments>
		<pubDate>Tue, 25 Oct 2011 01:51:50 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[const]]></category>
		<category><![CDATA[Flash Builder]]></category>
		<category><![CDATA[Function]]></category>
		<category><![CDATA[pattern]]></category>
		<category><![CDATA[RegExp]]></category>
		<category><![CDATA[Regular-Expressions]]></category>
		<category><![CDATA[replace]]></category>
		<category><![CDATA[slug]]></category>
		<category><![CDATA[slugify]]></category>
		<category><![CDATA[String]]></category>
		<category><![CDATA[toLowerCase]]></category>
		<category><![CDATA[URL]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[تابع]]></category>
		<category><![CDATA[حذف کاراکتر]]></category>
		<category><![CDATA[عبارات با قاعده]]></category>
		<category><![CDATA[فلش]]></category>
		<category><![CDATA[نام فایل]]></category>
		<category><![CDATA[پترن]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=1417</guid>
		<description><![CDATA[در این مطلب به slugify پرداخته می شود ، در کل به آماده کردن یک متن برای استفاده در URL و یا به عنوان نام یک فایل توسط حذف کاراکتر هایی که برای این موارد مجاز نمی باشد در استلاح slugify یا slug کردن نامیده می شود. در ادامه ما توسط عبارات با قاعده (Regular-Expressions) [...]]]></description>
			<content:encoded><![CDATA[<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">
	<img src="http://blog.iflashlord.com/wp-content/uploads/2011/10/slugify_iflashlord.jpg" alt="iflashlord.com" />
	</p><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در این مطلب به slugify پرداخته می شود ، در کل به آماده کردن یک متن برای استفاده در URL و یا به عنوان نام یک فایل توسط حذف کاراکتر هایی که برای این موارد مجاز نمی باشد در استلاح slugify یا slug کردن نامیده می شود.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در ادامه ما توسط عبارات با قاعده (Regular-Expressions) و تابع replace در اکشن اسکریپت ۳ ، اقدام به ساخت تابعی می کنیم که این کار را برای ما انجام دهد.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><span id="more-1417"></span></p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در ابتدا دو RegExp که دو پترن مورد نیاز ما می باشند را به عنوان ثابت (const) تعریف می کنیم، مورد اول pattern1 مربوطه به انتخاب همه حروف الفبا و علامت دش (-) یا همان خط تیره می باشد که در کد زیر توسط (\ا-ی) تمامی حروف الفبای فارسی نیز پشتیبانی می شود، و مورد دوم pattern2 می باشد که فاصله ها یا همان Space های موجود در متن توسط آن انتخاب می شوند.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در نهایت توسط تابع replace مربوطه به string ها در اکشن اسکریپت ۳ متون اضافی حذف  ،و فاصله ها با علامت (-) جا به جا می شوند و در نهایت متن توسط toLowerCase به حروف کوچک تبدیل می شود و بازگشت داده می شود.</p>
<pre class="brush: as3; title: ; notranslate">
function slugify(string:String):String
{
const pattern1:RegExp = /[^\w-\ا-ی ]/g;// همه حروف به جز فاصله و علامت دش (-) ؛
const pattern2:RegExp = / +/g;// یک یا بیش از یک فاصله
var s:String = string;
return s.replace(pattern1, &quot;&quot;).replace(pattern2, &quot;-&quot;).toLowerCase();
}
//مثال
trace(slugify(&quot;تست  متن با فاصله&quot;));
//تست-متن-با-فاصله

trace(slugify(&quot;test  text with space&quot;));
//test-text-with-space
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">اگر می خواهید که تنها کاراکتر های انگلیسی پشتیبانی شود و متون فارسی نیز از خروجی حدف شود تابع بالا را طبق کد زیر تغییر دهید:</p>
<pre class="brush: as3; highlight: [3]; title: ; notranslate">
function slugify(string:String):String
{
const pattern1:RegExp = /[^\w- ]/g;// همه حروف انگلیسی به جز فاصله و علامت دش (-) ؛
const pattern2:RegExp = / +/g;// یک یا بیش از یک فاصله
var s:String = string;
return s.replace(pattern1, &quot;&quot;).replace(pattern2, &quot;-&quot;).toLowerCase();
}
//مثال
trace(slugify(&quot;تست  متن با فاصله&quot;));//-
trace(slugify(&quot;test  text with space&quot;));//test-text-with-space
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">این تابع در مواردی که می خواهید متون را در آدرس های وب (URL) و یا به عنوان نام فایل مورد استفاده قرار دهید ،کاربرد دارد.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1390/08/slugify-%da%a9%d8%b1%d8%af%d9%86-%d9%85%d8%aa%d9%86-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic (Feed is rejected)
Page Caching using disk: enhanced
Database Caching 1/9 queries in 0.020 seconds using disk: basic
Object Caching 512/542 objects using disk: basic

Served from: blog.iflashlord.com @ 2012-02-09 16:43:46 -->
