aboutsummaryrefslogtreecommitdiff
path: root/files/zh-tw/conflicting/web/javascript/guide/regular_expressions_38b32725e0e3217a5542b1b4ee122407/index.html
blob: 2dce68e5a9afdb719c1b7eb05cc8e3b5e53b303b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
---
title: 使用標誌的進階搜尋
slug: Web/JavaScript/Obsolete_Pages/Obsolete_Pages/Obsolete_Pages/正規表達式的運用/使用標誌的進階搜尋
translation_of: Web/JavaScript/Guide/Regular_Expressions
translation_of_original: >-
  Web/JavaScript/Guide/Obsolete_Pages/Working_with_Regular_Expressions/Advanced_Searching_With_Flags
---
<h3 id="使用標誌的進階搜尋" name="使用標誌的進階搜尋">使用標誌的進階搜尋</h3>
<p>正規表達式有四個選用的標誌,這些標誌可用於全域或不分大小寫等的搜尋。若要指明為全域搜尋,就使用 <code>g</code> 標誌。若要指明為區分大小寫來搜尋,就使用 <code>i</code> 標誌。若要指明為在多行中搜尋,就使用 <code>m</code> 標誌。若要進行“定點”搜尋,也就是以目標字串的目前位置為開始點來搜尋,那就使用 <code>y</code> 標誌。這些標誌可以單獨或不分順序混合使用,並作為正規表達式的一部分。</p>
<p>{{ Fx_minversion_note(3, "Firefox 3 新增了對 <code>y</code> 標誌的支援。如果在目標字串的目前位置上比對不成功,<code>y</code> 標誌就會失敗。") }}</p>
<p>要在正規表達式中包含標誌,使用以下語法︰</p>
<pre>re = /pattern/flags
re = new RegExp("pattern", ["flags"])
</pre>
<p>注意,標誌也是正規表達式整體的一部分。之後就不能新增或移除標誌。</p>
<p>舉例來說,<code>re = /\w+\s/g</code> 建立了可尋找 1 個以上的字元並且後接空白的正規表達式,並找出整個字串的組合部分。</p>
<pre>&lt;script type="text/javascript"&gt;
 re = /\w+\s/g;
 str = "fee fi fo fum";
 myArray = str.match(re);
 document.write(myArray);
&lt;/script&gt;
</pre>
<p>顯示出 {{ mediawiki.external('\"fee \", \"fi \", \"fo \"') }}。在這個範例中,你可以取代一整行︰</p>
<pre>re = /\w+\s/g;
</pre>
<p>改用︰</p>
<pre>re = new RegExp("\\w+\\s", "g");
</pre>
<p>得到同樣的結果。</p>
<p><code>m</code> 標誌用來指明輸入的多行字串應該視為多行。如果使用 <code>m</code> 標誌,^ 和 $ 就會在輸入字串裡比對每一行的開始處和結尾處,而非整個字串的開始處和結尾處。</p>
<div class="noinclude">
<p>{{ PreviousNext("Core_JavaScript_1.5_教學:正規表達式的運用:括弧子字串的比對結果的運用", "Core_JavaScript_1.5_教學:正規表達式的運用:正規表達式的範例") }}</p>
</div>
<p> </p>
<p> </p>
<p>{{ languages( { "en": "en/Core_JavaScript_1.5_Guide/Working_with_Regular_Expressions/Advanced_Searching_With_Flags", "es": "es/Gu\u00eda_JavaScript_1.5/Trabajar_con_expresiones_regulares/Ejecutar_una_busqueda_global,_discriminar_mayusculas_y_minusculas_y_considerar_entrada_multil\u00ednea", "fr": "fr/Guide_JavaScript_1.5/Travailler_avec_les_expressions_rationnelles/Ex\u00e9cution_de_recherches_globales,_ignorer_la_casse,_utilisation_de_cha\u00eenes_multilignes", "ja": "ja/Core_JavaScript_1.5_Guide/Working_with_Regular_Expressions/Advanced_Searching_With_Flags", "pl": "pl/Przewodnik_po_j\u0119zyku_JavaScript_1.5/Praca_z_wyra\u017ceniami_regularnymi/Globalne_wyszukiwanie,_wielko\u015b\u0107_znak\u00f3w,_wieloliniowe_wej\u015bcie" } ) }}</p>