我想要一个仅在花括号内包含字母数字字符,下划线和特定占位符的正则表达式。
有效示例:
test{placeholder}
test_{placeholder}
test_123_{placeholder}
test
test_123
test123
{placeholder}_test
test{placeholder}test
And any combination of above.
这是我想出的:
[^-A-Za-z0-9_]|^\{placeholder\}
我的理解是:
[^-A-Za-z0-9_]
-除a-z 0-9和下划线外,不允许其他任何字符。
|^\{placeholder\}
-或未显示{placeholder}
但是它不起作用,我不确定为什么。
这里是demo
请帮助。
答案 0 :(得分:1)
您可以使用
^(?:[A-Za-z0-9_]|{placeholder})+$
详细信息
^
-字符串的开头(?:
-一个非捕获组的开始:
[A-Za-z0-9_]
-单词char:字母,数字,_
|
-或{placeholder}
-特定的子字符串)+
-组结束,重复1次或更多次$
-字符串的结尾。