Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 创建用于清理公司名称的正则表达式_Java_Regex - Fatal编程技术网

Java 创建用于清理公司名称的正则表达式

Java 创建用于清理公司名称的正则表达式,java,regex,Java,Regex,我想通过删除所有“有限公司”、“有限公司”等来清理公司名称 我是新来的正则表达式,我搜索过类似的问题,但没有一个对我有用,因为它们的语法不同,或者不适合我的问题 我导入了一个带有世界上所有已知后缀的CSV文件,作为我的refex的基础。CSV的内容如下所示: ... co commv coop corp corporation cpora cpt crl cv cvoa cxa da ... 代码如下: //BS:读取通用公司后缀并创建正则表达式字符串的方法 公共字符串readCSVMappi

我想通过删除所有“有限公司”、“有限公司”等来清理公司名称

我是新来的正则表达式,我搜索过类似的问题,但没有一个对我有用,因为它们的语法不同,或者不适合我的问题

我导入了一个带有世界上所有已知后缀的CSV文件,作为我的refex的基础。CSV的内容如下所示:

...
co
commv
coop
corp
corporation
cpora
cpt
crl
cv
cvoa
cxa
da
...
代码如下:

//BS:读取通用公司后缀并创建正则表达式字符串的方法
公共字符串readCSVMapping(){
字符串结果=”;
int i=0;

try(Scanner Scanner=新的扫描仪(新文件(“data/ofac/other/company_suffix_cln.csv”);){ while(scanner.hasNextLine()){ 字符串行=scanner.nextLine(); 尝试(扫描器行扫描器=新扫描器(行)){ rowScanner.useDelimiter(“;”); while(rowScanner.hasNext()){ 如果(i==0){ 结果=结果+行扫描程序.next().toUpperCase(); i++; } 否则{ 结果=结果+“|”+行扫描程序.next().toUpperCase(); } } } } }catch(filenotfounde异常){ e、 printStackTrace(); } //BS:按字符串长度对字符串排序(降序) String[]results=result.split(“\\\\”); 排序(结果,(a,b)->b.length()-a.length()); 结果=String.join(“|”,results); 返回结果; }
不幸的是,它还将“ba”从“bank”中删除,这是我不想要的。我试图在结果字符串中添加边界,但根本没有删除后缀。。例如:

result=result+“|”+“\\\b”+rowScanner.next().toUpperCase()+“\\\b”

提前谢谢你


谢谢你的回复,但答案其实很简单

if(i==0){
结果=结果+“\\b”+行扫描程序.next().toUpperCase()+“\\b”;
i++;
}
否则{
结果=结果+“|”+“\\b”+行扫描程序。下一步().toUpperCase()+“\\b”;
}

现在可以用了

你能举一些例子吗?很少有名字/字符串适合你,也很少有不适合你。试着用
“\\b”
代替
“\\\b”
(这是一个反斜杠,后面跟着一个反斜杠)。也许值得用一些示例正则表达式输入/输出代码替换你的csv读取代码。data/ofac/other/company\u suffix\u cln.csv共享这个文件。当然,这里有一个例子:
“苏格兰银行股份有限公司”
我的代码返回奥特兰银行