[英]Regex match with 3 condition?
我將創建數學程序。如果我想解決,我需要使用正則表達式與方程式分開。 例如:
`10x-10y2+100x-100k=100`
格式將與正則表達式output: "10x" ,"100x" ,"100k" ,"10y2","100"
分開output: "10x" ,"100x" ,"100k" ,"10y2","100"
我已經使用單獨的匹配功能編寫了代碼
有:
for num[a-z]num : ` /([\-+])?\s*(\d+)?([a-z]?(\d+))/g`
for num[a-z] : ` /([\-+])?\s*(\d+)?([a-z]?(\d+))/g`
fon num : `/\b[+-]?[\d]+\b/g`
我需要在一個正則表達式匹配函數中的所有這三個匹配函數。有一個幫助將代碼與單個正則表達式結合起來
注意:我需要匹配函數而不是分割,因為我將該正則表達式應用於解析器
謝謝。
拆分符號:
"10x-10y2+100x-100k=100".split(/[-+=]/);
輸出:
["10x", "10y2", "100x", "100k", "100"]
如果你需要使用match()
方法我建議相同的方法:
"10x-10y2+100x-100k=100".match(/[^-+=]+/g);
輸出是一樣的。
/(?:0|[1-9]\\d*)?(?:[az]+)?(?:\\^(?:0|[1-9]\\d*))?/g
// finds:
// vvv vvvvv vvvv vvvv vvvvv vv vvv v vvv
10x-10y^2+100x-100k=100^4+xy+100+100y2+0-1^0
// doesn't find: ^^^^^
(?:0|[1-9]\\d*)?
0,或1-9然后是零或更多數字。 可選的。 (?:[az]+)?
可選的一個或多個小寫字母。 (?:\\^[1-9]\\d*)?
可選電源。
\\^
文字文字。 (?:0|[1-9]\\d*)
零,或者1-9然后是零或更多數字。 如果我錯過了什么讓我知道,我會把它合並。
嘗試這個:
s.match(/\d+([A-Za-z]\d*)?/g)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.