zoukankan      html  css  js  c++  java
  • 利用正则表达式作为string.split seprator

    某字符串

    var str = "{1,att,7},{2,break,7},{3,crit,7},{4,combo,7},{5,break,7},{6,hit,7}";

    需要分割成"{a,b,c}"形式,直接用str.split(',')结果是这样的:

    ["{1", "att", "7}", "{2", "break", "7}", "{3", "crit", "7}", "{4", "combo", "7}", "{5", "break", "7}", "{6", "hit", "7}"]

    查阅w3cschool可知string.split方法可采用正则作为参数,因此可限制seprator为后跟"{"的“,”号,正则表达式中正向肯定预查语句用在此处非常合适:

    var reg = /,(?={)/g;
    str.split(reg);

    结果为:

    ["{1,att,7}", "{2,break,7}", "{3,crit,7}", "{4,combo,7}", "{5,break,7}", "{6,hit,7}"]

    达到预期要求。

    正则表达式中,预查语句有4种,分别是:
    正向肯定预查(?=pattern)
    反向肯定预查(?<=pattern)
    正向否定预查(?!pattern)
    返回否定预查(?<!pattern)

    预查语句并不占用匹配的名额

    详细定义见预查语句

  • 相关阅读:
    HTTPS原理浅析
    Java8 HashMap源码分析
    Java8 ArrayList源码分析
    Java反射
    Java泛型
    Tensorflow卷积神经网络
    Java8 Stream简介
    java.io与网络通信
    Python实现RNN
    域名系统DNS简介
  • 原文地址:https://www.cnblogs.com/tudas/p/regex-as-string-split-seprator.html
Copyright © 2011-2022 走看看