在 preg_replace 正则表达式模式中检测正斜杠时出现问题
我正在对可能包含街道号码的字符串运行 preg_replace 。我使用的模式是:
([A-Za-z0-9]*)/i
这对于 1、1a、123 等数字效果很好。
但是它不会拾取像 1/54B 这样的街道号码
我尝试在模式中添加正斜杠,如下所示:
([A-Za-z0-9\/]*)/i
但它不是不选择像 1/54B 这样的数字。
关于我应该使用什么有什么想法吗?
I am running preg_replace across a string which may contain street numbers. The pattern I'm using is:
([A-Za-z0-9]*)/i
This works fine for numbers such as 1, 1a, 123 etc.
However it does not pick up street numbers like 1/54B
I tried to add a forward slash to the pattern like this:
([A-Za-z0-9\/]*)/i
But it isn't picking up numbers like 1/54B.
Any ideas on what I should be using?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试
使用替代分隔符会使事情变得更简单。
Try
Using alternate delimiters makes it much simpler.
我意识到在这个例子中我忽略了正斜杠被转换为 URL 友好代码 (%2F),因此
适用于这种情况。是的,我觉得自己很蠢。
感谢马修提供的有用提示。要把那一份归档。
I realised that in this example I had overlooked that the forward slash was being translated into URL friendly code (%2F) so
worked for this situation. Yup, I feel stupid.
Thank you to Matthew for his useful tip. Going to file that one away.