簡體   English   中英

Java和ECMA-262(AS,JS)中正則表達式之間的差異

[英]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-casemultiline之外,它還支持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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM