我需要创建一个正则表达式来检测匹配以下Java和Php格式的字符串:
[@用户名:4]
其中“用户名”可以是任何文本,“ 4”可以是任何整数。我曾尝试自己创建一个,但是我对正则表达式领域并不陌生,因此无法做到。这是我得到的最远的信息:
([[] + [@] + [A-Za-z0-9])\ w +
任何帮助都会很棒。谢谢!
最佳答案
一种快速的方法是使用以下正则表达式:
\[@\w+:\d+\]
Test Here
这可以满足您的要求,但有一个缺点。它不考虑用户名或整数的长度。
我不知道这对您来说是否重要,但我个人更希望使用此正则表达式:
\[@\w{1,25}:\d{1,5}\]
Test Here
与上面的代码完全相同,但不允许无限长的用户名或数字,并为两者设置了界限。
在垂直方向上,
\w{1,25}
表示它将与1到25次(含)之间的任何单词字符(a-zA-Z0-9_)匹配。因此,最长的用户名长度为25个字符,最短的用户名长度为1个字符。这些值可以调整。同样,它将整数长度限制在1到5个字符之间,因此任何大于5位或小于1的整数都是无效的:
\d{1,5}
同样,可以调整值。