[英]Differences between regular expressions in Java and ECMA-262 (AS, JS)
我需要將Java正則表達式轉換為Actionscript正則表達式。
顯然沒有任何預制轉換器,所以我試圖自己寫一個。 有沒有列出所有差異的資源?
我知道regular-expressions.info,但似乎並沒有全面的差異列表。
謝謝
我不知道任何現有的轉換器,但如果你的目標是專門的ActionScript而不是任何ECMA-262實現,那么這項工作可能比你預期的要容易。 AS3由PCRE驅動,與PHP的preg_
函數相同,因此它支持lookbehind,原子組和占有量詞,與Java相同。 除了JS的ignore-case和multiline之外,它還支持Java的dotall和擴展模式。 它也支持內聯修飾符語法( (?imsx)
)。
PCRE的Unicode支持比Java更好,但不幸的是,我不認為它包含在ActionScript中。 Unicode功能似乎與字符編碼明確相關,即PCRE中的UTF-8; 我相信ActionScript根據ECMA-262使用UTF-16。 無論如何,它的Unicode支持似乎很小,與JavaScript相同。
這是一個細分:
java.util.regex RegExp.prototype Character class set operations (?#…) comment patterns Named capture The /y (sticky) modifier The /x (extended) modifier \u10000+ Codepoints Possessive quantifiers Quotation Exception Handling Linebreak matcher
參考
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.