簡體   English   中英

小寫的純Javascript拆分字符串UPPER

[英]Plain Javascript Split String UPPER from lower case

我正在嘗試在Javascript(ES5)中拆分包含大寫部分+小寫部分的字符串。 字符串始終看起來像“ UPPERlower”。

這是我目前使用的

"ABCabc".match(/^[A-Z]+/g).concat("ABCabc".match(/[a-z]+$/g)) //result is ["ABC", "abc"]

有沒有更干凈的代碼可以實現這一目標?

編輯:Ori Drori的答案和mplungjan的答案都是正確的我的問題。

您可以使用| 匹配大寫或小寫序列:

 var result = "ABCabc".match(/[AZ]+|[az]+/g) console.log(result); 

銷毀是現代方式

 const s="UPPERlower"; let [,upper, lower] =/([AZ]+)([az]+)/g.exec(s); console.log(upper,lower); 

循環-注意: RegExp的exec()函數和String的match()函數之間有什么區別?

 const s = "UPPERlower UPlow 123 lowUP UPPlowe"; // Note:above will produce low UP using .match(/[AZ]+|[az]+/g) instead of capturing const re = /([AZ]+)([az]+)/g; while (match = re.exec(s)) { [, upper, lower] = match; console.log(upper, lower) } 

較舊的方法:

 var parts=/([AZ]+)([az]+)/g.exec("UPPERlower"); console.log(parts[1],parts[2]); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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