我有一個問題,只能從字符串中提取'a-zA-Z0-9-'。如何僅使用JavaScript或PHP從字符串中獲取?
示例;
如果我輸入 「貓นกห004-1กกกกก」 它告訴我只有 'A-CAT-004-1'
或
,如果我輸入「AAمقتطف4- 5 aaa「 - >'aa-5-4-aaa'
有什麼想法嗎?
我有一個問題,只能從字符串中提取'a-zA-Z0-9-'。如何僅使用JavaScript或PHP從字符串中獲取?
示例;
如果我輸入 「貓นกห004-1กกกกก」 它告訴我只有 'A-CAT-004-1'
或
,如果我輸入「AAمقتطف4- 5 aaa「 - >'aa-5-4-aaa'
有什麼想法嗎?
執行以下操作:
[^a-zA-Z0-9_ -]
。這消除了你不想要的任何字符。-
替換' +'
(一個或多個空格)至少這就是我所能猜到的。您的示例與您的問題描述不符。由於你沒有提到它,所以關於空格和小寫的部分是從你的例子中推斷出來的。
在PowerShell中,這可能如下所示:
PS> (('A cat นกห 004-1 กกกกก' -replace '[^a-zA-Z0-9_ -]').Trim() -replace ' +','-').ToLower()
a-cat-004-1
PS> (('aa مقتطف 4-5 aaa' -replace '[^a-zA-Z0-9_ -]').Trim() -replace ' +','-').ToLower()
aa-4-5-aaa
修改相應的PHP或JavaScript。都支持正則表達式和字符串函數。
你已經試過了什麼? – 2010-08-12 16:47:54