将JavaScript中的字符串分成三部分
Break Apart string in JavaScript with three parts
可能重复:
JavaScript RegExp三部分
我需要JavaScript中正则表达式的帮助(对不起,我还在努力学习。)
我有这个字符串:
all (any) -del
all -del (any)
all (any)
all -del
all
PS:all
、any
和del
可以取任何值,包括空格。
我需要将每个字符串分开:
var1 = all
var2 = any (or null)
var3 = del (or null)
你能帮我做这个吗?谢谢
怎么样:
/^(.*?)'s?('(.*?')|)'s?(-.*?|)$/
应用于您的示例:
'all (any) -del'.match(/^(.*?)'s?('(.*?')|)'s?(-.*?|)$/)
["all (any) -del", "all", "(any)", "-del"]
'all (any)'.match(/^(.*?)'s?('(.*?')|)'s?(-.*?|)$/)
["all (any)", "all", "(any)", ""]
'all -del'.match(/^(.*?)'s?('(.*?')|)'s?(-.*?|)$/)
["all -del", "all", "", "-del"]
'all'.match(/^(.*?)'s?('(.*?')|)'s?(-.*?|)$/)
["all", "all", "", ""]
要处理新的需求,有点复杂:
'all (any) -del'.match(/^(.*?)(?:'s?('([^-]*')|)'s?(-[^()]*|)|'s?(-[^()]*|)'s?('([^-]*')|))$/)
["all (any) -del", "all", "(any)", "-del", undefined, undefined]
'all -del (any)'.match(/^(.*?)(?:'s?('([^-]*')|)'s?(-[^()]*|)|'s?(-[^()]*|)'s?('([^-]*')|))$/)
["all -del (any)", "all", undefined, undefined, "-del ", "(any)"]
相关文章:
- 如何替换javascript字符串中的前三个连字符
- 将自然数转换为三位字符串的简单算法是什么
- regex:如何捕获字符串中的三个数字,而不是字符串的其余部分
- 从 jQuery 中的字符串中获取部分值
- 如何从第三个“/”之后获取字符串
- 有一个功能可以将字符串很好地缩短为一个、两个或三个字母
- 使用三个.js加载字符串中的 .obj 存储
- 按第三个实例拆分字符串
- 如何从字符串中剪切第三个符号,并在没有第三个字符的情况下提醒它
- 将JavaScript中的字符串分成三部分
- JavaScript RegEx新手-从三个单词字符串中选择中间单词
- 为什么我需要“$$$"(三美元)如果我想要“$$"(两美元)作为Java中的替换字符串
- 我可以使用三重等于进行JavaScript字符串比较吗
- 与Python一样,Javascript中三引号字符串的替代方案
- 如何隐藏表中第三个单元格值与给定字符串不匹配的行
- Javascript查找第三次出现在字符串中的子字符串
- 禁用基于三个字符串的选择选项
- 为什么split函数创建了三个子字符串,而在下面的例子中只创建了两个
- 连接三个字符串并将新字符串发送到数据库中
- Regex捕获三个字符串