[英]Regular expression to match exact string with apostrophe
我正在嘗試編寫正則表達式以匹配這些確切的字符串:
我不是在尋找一個字符。 我正在尋找一個確切的字符串,並試圖了解正則表達式如何工作。
我已經閱讀了MDN文檔和Eloquent JS中的章節 ,並在堆棧溢出對話中進行了搜索。
我知道方括號中的任何內容都代表一個字符集,並且這些字符不必按順序出現。
我試過/[i\\'m] in/
在我的代碼中有效,但是當我運行時:
/[i\\'m] in/.exec('i\\'m in')
計算結果為[“ m in”]
我也嘗試過/i\\'m in/
在我的代碼中不起作用以及何時但當我運行時:
/i\\'m in/.exec('i\\'m in')
評估為[“ i'm in”]
不知道為什么會這樣。 任何指針或照明都很好。
您的正則表達式僅匹配4個字符,而完整字符串的長度為6個字符。
/[i\'m] in/.exec('i\'m in')
正則表達式-> [i\\'m] in
它將匹配4個字符。 第一個字符可以是i
或\\'
或m
。 第二個字符是space
,第三個字符是i
,第四個字符是n
。 您不必在正則表達式中將\\
用作'
。 但是,你將需要使用\\
為'
在JS字符串。
字符串-> 'i\\'m in'
m in
是正則表達式匹配的字符串。 它還可以匹配以下字符串: i in
, ' in
如果要匹配字符串的所有6個字符,則可以使用如下所示的內容:
/i'm in/.exec('i\'m in')
演示: https : //repl.it/EfDS/3
而且,如果您要進行匹配,請使用or
運算符。
/i'm (in|out)/.exec('i\'m out')
演示: https : //repl.it/EfDS/4
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.