我需要幫助將等於代碼轉換爲匹配(正則表達式)。非常感謝。將java代碼轉換爲一個正則表達式
//string composed of prefix and suffix - Can be spaced
//PREFIX - alfa-numeric, variable length, upper/lower case
//SUFFIX - numeric, variable length, can be spaced
String str="xpto 123 456 789";
String prefix_to_search="XPTO";
String digits_to_search="123456789";
//remove prefix (case insensitive)
str.substring(str.toUpperCase().startsWith(prefix_to_search) ? prefix_to_search.length() : 0).
//remove spaces
replace(" ","").
equals(digits_to_search));
給定一個字符串 「xpto 123 456 789」
MATCH
「123456789」
「123 456 789」
「1 2 3 4 5 6 7 8 9」
「XPTO 123 456 789」
「XPTO 1 2 3 4 5 6 7 8 9」
NOT MATCH
「12345678」
「1234567890」
「XPTO 12345678」
「XPTO 1234567890」
「XP 123 456 789」
「123 456 789 XPTO」
換句話說:
- 前綴必須是IGNORED(case INSENSITVE!)
- 數字必須匹配(空格必須忽略!)
請記住,你也可以在www.regexr.com上試試它 – ha9u63ar 2015-03-18 22:27:21
爲什麼?如果你的代碼有效,你是否真的需要改變它? – 2015-03-18 22:31:45
它將應用於QUERY!我沒有可用的所有字符串函數,但我可以使用「匹配」! – marcolopes 2015-03-18 22:36:16