我正在使用以下正则表达式来检查输入字段。我想允许所有货币符号:
/^[\w\s\-\#?\!:='\(\)\p{Sc}]+$/
它有效 - 除€
符号外。
\p{Sc}
表示“匹配所有货币”。 $
符号是例如工作 - 但€
标志被踢出。
我的错误在哪里? 问候。
答案 0 :(得分:1)
使用u
标志启用UTF模式,以便将模式和输入字符串视为Unicode字符串(采用UTF-8编码)。如果没有u
标志,则匹配对字节进行操作,并且不支持Unicode。
/^[\p{Sc}\w\s#?!:='()-]+$/u
我还删除了不必要的转义\
并将-
放在字符类的末尾以避免转义。