有没有办法删除诸如 之类的特殊字符*
?
我尝试过使用replace
、、,regexp_replace
但我的版本至少无法识别特殊字符。
有数百个字段,我想知道是否可以删除特定的特殊字符。
0
最佳答案
2
这regex_replace
将替换所有不是字母 (AZ / az) 或数字 (0-9) 或“-”或空格 (“”) 的字符:
请注意,我使用了不同的字段名称。因此,请确保用您的字段名称替换“test”!
regexp_replace("test", '[^a-zA-Z0-9- ]', '')
前:
后:
|
使用正则表达式,只保留数字和连字符,使用:
regexp_replace (name,'[^\\d|-]','')
:(^
帽子):排除以下内容:(\\d
任何数字);:|
逻辑或-
连字符;[]
匹配特定字符(定义的字符:连字符或非数字)。因此,这会匹配所有非连字符或数字的内容,并将其替换为空字符串(删除它)。
变体,为了展示简单和正则表达式的语法如何工作replace()
,请参见此处如何替换星号*
:
replace (name,'*','')
或者
regexp_replace (name,'\\*','')
使用正则表达式,*
是一个量词,必须用 来屏蔽\\
。
|
|