PHP:如何用正则表达式删除字符串中|||及之后的所有内容?
如何用正则表达式删除字符串中“|||”及之后的所有字符?
很简单,你可以用这个正则表达式来匹配并移除|||及其后面的所有内容:\|\|\|.*
正则拆解:
\|\|\|:因为|在正则里是特殊元字符(用来表示“或”逻辑),所以必须用反斜杠\转义,这样才能精准匹配字面意义上的三个竖线分隔符。.*:这部分表示匹配**任意字符(除换行符外)**零次或多次,也就是从|||开始一直到字符串末尾的所有内容。
具体实现示例
以JavaScript为例,处理你的数组只需要用map结合replace方法:
const originalArray = ["string|||mfasdfhadskjfahsldfhcadkasldhfaf", "apple|||2345hrquwfiqfh4fhlqwu4f", "orange|||0erjoerhtqothcro"]; const processedArray = originalArray.map(str => str.replace(/\|\|\|.*/, '')); console.log(processedArray); // 输出: ["string", "apple", "orange"]
如果是Python,写法类似(注意用原始字符串避免转义问题):
original_array = ["string|||mfasdfhadskjfahsldfhcadkasldhfaf", "apple|||2345hrquwfiqfh4fhlqwu4f", "orange|||0erjoerhtqothcro"] processed_array = [s.replace(r'\|\|\|.*', '', 1) for s in original_array] print(processed_array) # 输出: ['string', 'apple', 'orange']
额外说明
如果数组里的某个字符串没有|||分隔符,replace方法不会对它做任何修改,原字符串会被完整保留,完全符合你的需求。
内容的提问来源于stack exchange,提问作者Max
相关产品推荐
相关产品推荐

