繁体   English   中英

字符串首字符的正则表达式

[英]Regex for string first chars

在我的Rails应用中,我需要验证一个字符串,该字符串在创建时不能将其第一个字符清空或由任何特殊字符组成。

例如:“ file”和“%file”无效。 您知道我应该使用什么正则表达式吗?

谢谢!

以下正则表达式仅在字符串的首字母为字母,数字或'_'时才匹配:

^\w

限制为仅字母或数字:

^[0-9a-zA-Z]

^在正则表达式中具有特殊含义,当它在字符类( [...] )之外时,它与字符串的开头匹配(实际上不与任何字符匹配)。

如果要匹配所有无效字符串,可以在字符类中放置一个^来取反,因此以前的表达式为:

^[^\w]

要么

^[^0-9a-zA-Z]

交互式尝试Ruby正则表达式的一个好地方是Rubular 我给出的链接显示了@Dave G给出的答案以及一些测试示例(乍一看似乎可行)。 您可以扩展示例以进一步说服自己。

正则表达式

^[^[:punct:][:space:]]+

应该做你想要的。 对于正则表达式和POSIX类支持,我不确定100%Ruby提供了什么,因此您在这方面的工作可能会有所不同。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM