正则表达式去除中文后面的冒号并保留中文
时间: 2023-07-31 13:13:49 浏览: 215
如果你想要保留中文并去除中文后面的冒号,你可以使用正向肯定预查来实现。下面是一个示例代码:
```python
import re
def remove_colon(text):
pattern = r'(?<=[\u4e00-\u9fa5]):'
result = re.sub(pattern, '', text)
return result
# 测试
text = '这是一篇中文文章:Hello World!'
result = remove_colon(text)
print(result)
```
输出结果为:
```
这是一篇中文文章Hello World!
```
在正则表达式 `(?<=[\u4e00-\u9fa5]):` 中,`(?<=...)` 是一个正向肯定预查,表示匹配前面是中文字符的冒号。这样,只有中文字符后面的冒号才会被替换为空字符串,而中文字符本身会被保留。
相关问题
[0: 94, 1: 107, 2: 108, 3: 109, 4: 110]转化为94,107,108,109,110的正确方式是直接去掉前面的数字和冒号,只保留后面的数字,即:94,107,108,109,110。js方法
可以使用JavaScript的map方法配合正则表达式来实现:
```
const arr = [0: 94, 1: 107, 2: 108, 3: 109, 4: 110];
const newArr = arr.map(item => Number(item.toString().match(/\d+/)));
console.log(newArr); // [94, 107, 108, 109, 110]
```
以上代码中,map方法会遍历原数组中的每一个元素,使用toString方法将其转化为字符串,然后使用正则表达式/\d+/匹配数字,并使用Number方法将其转化为数字。最终得到的新数组就是所需的结果。
阅读全文