如果字符串为下面的格式:字母(不区分大小写),可以包含空格(或者不包含)
Populus deltoides
去除字符串两边所有的非英文字符
如果字符串为下面的格式:包含字母(不区分大小写),包含两个英文引号,可以包含空格(或者不包含)
Populus deltoides 'Purple Tower'
去除字符串两边所有的非英文字符,保留字符串中的引号
如果字符串为下面格式:包含汉字,包含中文引号
‘紫塔’东方白杨
去除字符串两边所有的非中文字符,保留字符串中的中文引号
例如
Populus deltoides_123,测试+Populus deltoides 结果为 Populus deltoides
Populus deltoides 'Purple Tower'-123,测试Populus deltoides 'Purple Tower'123,结果为Populus deltoides 'Purple Tower'
‘紫塔’东方白杨123abc,结果为‘紫塔’东方白杨
想去什么特殊符号就加进去
Regex regString = new Regex("[-~#()|【-】· (){}+=*^&%$@!.,,。<>;::;‘’“”、'/_ ]"); ;
text = regString.Replace(text, "-");
举一些例子,应该这样识别的
Populus deltoides_123,测试+Populus deltoides 结果为 Populus deltoides
Populus deltoides 'Purple Tower'-123,测试Populus deltoides 'Purple Tower'123,结果为Populus deltoides 'Purple Tower'
‘紫塔’东方白杨123abc,结果为‘紫塔’东方白杨
分三种情况,在代码里用if判断,需要用好几个正则
"非英文字符"是指非 ASCII 字符?
– dudu 1年前