2016-02-15 20 views
0

是否有特殊字符串,例如Java中的\ Q和\ E? 謝謝。在ActionScript正則表達式中轉義多個字符

+0

它們應該工作相同。我沒有投票,但是,我建議你編輯你的問題來顯示一個例子字符串+期望的輸出。同時顯示你如何處理這個正則表達式的AS3代碼。這將更容易看到你的問題,這種方式.. –

+0

@ VC.One你確定嗎?我認爲'\ Q'和'\ E'對於Java來說是特殊的,而不是RegEx的一部分。 – Aaron

+0

@Aaron,我的壞。我記得讀過AS3使用與JavaScript相同的RegEX引擎,不知怎的,我做了[不合邏輯]的跳躍,以假設它也適用於Java。 –

回答

2

據我所知在AS3 RegExp中沒有相當於\Q\E。你可以做的是同樣的事情you would in Javascript:一個RegExp模式中逃避使用特殊字符:

function escapeForRegExp(s:String):String { 
    return s.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&"); 
} 

// Example: 
var s:String = "Some (text) with + special [regex] chars?"; 
var r:RegExp = new RegExp("^" + escapeForRegExp(s), "g"); 

// Same as if you wrote the pattern with escaped characters: 
/^Some \(text\) with \+ special \[regex\] chars\?/g 
0

簡短的回答是否定的,你有一個與\ 逃脫每個人物在時間描述 http://help.adobe.com/en_US/as3/dev/WS5b3ccc516d4fbf351e63e3d118a9b90204-7e91.html 如果它是一個真正的問題,你能想象編寫自己的避開功能和使用: new RegExp(escape("your text (using reserved characters ^^) [...]")) 而不是恆定的語法 /your text \(using reserved characters \^\^\) \[\.\.\.\]/ 如果你不想逃避整個正則表達式,正好連接逃脫&非轉義部件

escape()函數可能是RegExp單線程,只是在任何保留字符前面加上'\'

相關問題