Regex 匹配整词的正则表达式

Regex 匹配整词的正则表达式,regex,Regex,我尝试在JavaScript中使用正则表达式来匹配字符串中单词“icon-”的实例,并将整个附加单词返回到分隔符(空格)。字符串的一个示例是 ui-grid-ico-sort icon icon-up ui-icon-asc icon-user ui-icon ui-icon-triangle-1-n ui-sort-ltr 在这种情况下,我试图只匹配“图标向上”和“图标用户” 到目前为止,我已经尝试过\bicon-它似乎匹配图标的每个实例-无论它在单词中的位置如何(4个匹配项)和\bicon

我尝试在JavaScript中使用正则表达式来匹配字符串中单词“icon-”的实例,并将整个附加单词返回到分隔符(空格)。字符串的一个示例是

ui-grid-ico-sort icon icon-up ui-icon-asc icon-user ui-icon ui-icon-triangle-1-n ui-sort-ltr
在这种情况下,我试图只匹配“图标向上”和“图标用户”


到目前为止,我已经尝试过\bicon-它似乎匹配图标的每个实例-无论它在单词中的位置如何(4个匹配项)和\bicon-[^'”]+它返回第一个图标实例后所有内容的1个匹配项-

使用以下正则表达式:
(^ |\s)图标-\s+

使用以下正则表达式:
(^|\s)icon-\S+
(^ |\s)图标-\s+

(^|\s)icon-\S+
匹配所有以
图标-
开头直到下一个空白字符的单词

您需要删除前导空格字符(如果存在)。没有其他方法,因为JavaScript不支持lookbehind断言

说明:

(^|\s)  # Match start of string or whitespace
icon-   # Match icon-
\S+     # Match one or more non-whitespace characters.
匹配所有以
图标-
开头直到下一个空白字符的单词

您需要删除前导空格字符(如果存在)。没有其他方法,因为JavaScript不支持lookbehind断言

说明:

(^|\s)  # Match start of string or whitespace
icon-   # Match icon-
\S+     # Match one or more non-whitespace characters.

这是正则表达式:

\bicon-[^\b]+?\b
通过使用\b,在以下情况下,此表达式也可以与“图标向上”匹配:

图标,图标向上

图标,图标向上,图标向下这是正则表达式:

\bicon-[^\b]+?\b
通过使用\b,在以下情况下,此表达式也可以与“图标向上”匹配:

图标,图标向上

图标,图标向上,图标向下

这不起作用-他不希望
ui图标asc
也在
\b
字符类中不起作用。这不起作用-他不希望
ui图标asc
也在
\b
字符类中不起作用。感谢您也提供了解释谢谢您也提供了解释N