匹配一串用竖线分隔、用竖线包裹的整数字符串中的两个整数之一
我已存储为 |1|7|11|
。
我需要使用 preg_match((
来检查 |7|
是否存在或 |11|
是否存在等。
我该怎么做?
I have stored as |1|7|11|
.
I need to use preg_match((
to check |7|
is there or |11|
is there etc.
How do I do this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
在表达式前后使用
\b
仅将其作为整个单词进行匹配:因此在您的示例中,它将是:
Use
\b
before and after the expression to match it as a whole word only:So in your example, it would be:
如果您只需要检查两个数字是否存在,请使用更快的 strpos 。
或者使用较慢的正则表达式来捕获数字
使用 regexpal 免费测试正则表达式。
Use the faster strpos if you only need to check for the existence of two numbers.
Or using slower regex to capture the number
Use regexpal to test regexes for free.
假设您的字符串始终以
|
开头和结尾:Assuming your string always starts and ends with an
|
:如果您确实想使用
preg_match
(尽管我推荐strpos
,就像 Xeoncross 的答案一样),请使用以下命令:If you really want to use
preg_match
(even though I recommendstrpos
, like on Xeoncross' answer), use this: