捕获可选的周围字符
capture optional surrounding characters
我不太懂正则表达式,所以我不确定如何实现以下目标:
我想从输入中捕获任意字符串,这些字符串可能包含也可能不包含“$”字符。如果“$”字符出现在字符串的开头,则末尾的“$”字符也必须出现。
目前我有
^\w+([_.-]\w+)*$
大致翻译为:
- 任意字字符
- 捕获组开始
- '_'、'.'、'-'的任意字符
- 在可选的\n
之前
因此有效匹配为:
test
test-5
test.1.3
test-alpha.2
现在我想让这成为可能
$test$
但不是...
$test (or test$)
^(?:(?:\w+(?:[_.-]\w+)*)|$test$)$
最好用 |
添加,而不是修改原始 one.See 演示。
我不太懂正则表达式,所以我不确定如何实现以下目标:
我想从输入中捕获任意字符串,这些字符串可能包含也可能不包含“$”字符。如果“$”字符出现在字符串的开头,则末尾的“$”字符也必须出现。
目前我有
^\w+([_.-]\w+)*$
大致翻译为:
- 任意字字符
- 捕获组开始
- '_'、'.'、'-'的任意字符
- 在可选的\n 之前
因此有效匹配为:
test
test-5
test.1.3
test-alpha.2
现在我想让这成为可能
$test$
但不是...
$test (or test$)
^(?:(?:\w+(?:[_.-]\w+)*)|$test$)$
最好用 |
添加,而不是修改原始 one.See 演示。