【问题标题】:String: split / match Uppercase, space, specialchar字符串:拆分/匹配大写、空格、特殊字符
【发布时间】:2012-12-14 11:17:35
【问题描述】:

我知道他们已经对这个主题提出了很多问题,但对此没有答案
我尝试了一段时间分裂:

var string = "ABC hereWeAre Againwith Those words";

['A','B','C','here','We','Are','Againwith','Those','words'];

(当有大写或空格时)。

我试过了:

string.match(/[A-Z]+|[a-z]+|[0-9]+|[\S]+/g);
string.match(/[a-z]+/gi);

但没有任何效果。
感谢您的帮助。

【问题讨论】:

    标签: javascript string split match uppercase


    【解决方案1】:

    正确的正则表达式是:

    "ABC hereWeAre Againwith Those words".match(/[A-Z][a-z]*|[a-z]+/g);
    

    【讨论】:

    • 非常感谢,就是这样!
    【解决方案2】:

    到这里(有点复杂但仍然有效):

    "ABC hereWeAre Againwith Those words".replace(/([A-Z])/g, ' $1').trim().split(/\s+/);
    // returns ["A", "B", "C", "here", "We", "Are", "Againwith", "Those", "words"]
    

    想法是找到大写字母,在前面加上空格,然后用空格修剪和分割整个字符串。注意将正则表达式传递到.split 以消除一个接一个以上的空格问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-30
      • 1970-01-01
      • 2015-07-07
      • 1970-01-01
      • 2022-11-13
      • 2018-12-13
      • 1970-01-01
      相关资源
      最近更新 更多