簡體   English   中英

javascript正則表達式模式來匹配具有自定義單詞邊界的單詞

[英]javascript regex pattern to match words, with custom word boundary

我正在嘗試使用javascript中的正則表達式來匹配字符串中的單詞。

可以說字符串是“我具有c ++的技能”。 我現在要計算“ c ++”子字符串的出現次數。 如果字符串是“ I have c ++ test”或類似的字符串,我不想匹配。 因此,我需要檢查單詞邊界並包括一些特殊字符,例如+和#。

我有以下代碼:

var str = "I have c++ as a skill, but I do not have c++test as a skill";

var regex = new RegExp("(?<![\\w+#])c\\+\\+(?![\\w+#])", "g");

count = (str.match(regex) || []).length; 

console.log(count); 

預期結果為“ 1”。

這在var regex行上失敗,並顯示以下錯誤:

SyntaxError: Invalid regular expression: /(?<![\w+#])c\+\+(?![\w+#])/: Invalid group 

我看不到需要進行哪些更改才能使邊界正常工作,有人可以幫助我嗎?

嘗試類似的方法:

var regex = new RegExp("([^\\w#]|^)c\\+\\+(?=[^\\w#]|$)", "g");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM