我从文件中读取了一个字符串,我将其拆分为 字符.例如,字符串是
1|test pattern|prefix|url|postfix
Run Code Online (Sandbox Code Playgroud)
所以拆分必须总是给我5个子串,在上面的例子中
["1", "test pattern", "prefix", "url", "postfix"]
Run Code Online (Sandbox Code Playgroud)
当这五个子串中的任何一个包含|时出现问题 字符.我会把它存储为转义\ |
1|test pattern|prefix|url \| title |postfix
Run Code Online (Sandbox Code Playgroud)
现在,你可以看到string.split('|')不会给我想要的结果.期望的结果是
["1", "test pattern", "prefix", "url \| title ", "postfix"]
Run Code Online (Sandbox Code Playgroud)
我尝试了一些正则表达式,但这些都没有给出理想的结果.
string.split(/[^\\]\|/) //["", "", "prefi", "$url \| $titl", " postfix"]
Run Code Online (Sandbox Code Playgroud)
看起来这只能用负面的回顾,但我无法让它工作