我們正在更新一個系統,其中的筆記被添加到包含電話號碼的字段中。使用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