我们正在更新一个系统,其中的笔记被添加到包含电话号码的字段中。使用PHP,我们试图清理这些字段并将它们分成两部分。一个用于电话号码,另一个用于说明。这个号码总是第一个,后面是注释。查找字符串中的第一个“无效”字符(清除电话号码)
我们并不过分关注产生的电话号码的确切格式。当用户更新他们的个人资料时,他们可能被迫清理它们。这些数字是美国格式。
几个例子。我想可能有其他变化:
"(123) 456-7890 Betty's cell"
becomes
"(123) 456-7890" and "Betty's cell"
"123-456-7890 Betty's cell
becomes
"123-456-7890" and "Betty's cell"
"456-7890 Betty's cell
becomes
"456-7890" and "Betty's cell"
"456-7890 ext. 123 Betty's cell
becomes
"456-7890 ext. 123" and "Betty's cell"
有效的电话号码字符可"+()-"
和进一步的东西,我们需要允许"ext."
我可以清理现有的数据,因此所有分机复杂化。变化是相同的。我们很乐意在字符串中找到第一个“无效”字符的位置并将其分割。
一直在寻找,但似乎无法找到任何适合这种情况的东西。感谢任何建议。
非常感谢!
T hank怪杰博士。除了有扩展名“ext。”的情况外,这种方法是有效的。在字符串中。是否有可能扩展正则表达式以包含“分机”? – ZeroGravity
如果你举例说明,我可以重写代码... –
从@trincot和你的代码的正则表达式我有它的工作!谢谢! – ZeroGravity