java 用于识别异常字符和亚洲表意文字的正则表达式模式匹配器
java regex pattern matcher to identify unusual characters and asian ideographs
我想通过以下文本根据 java 正则表达式模式提取某些特定元素:
『卥』
这个元素『卥』
,我想我总能找到『
和』
之间的项目并提取它,这应该是可行的,因为它们很漂亮不寻常的实体,因此它应该是识别和提取它们之间的任何内容的良好基础,即 卥
有很多关于使用 java 正则表达式模式匹配器匹配整个 类 字符的信息,但我没有找到太多关于只匹配一两个特定字符并从中删除内容的信息.我想这当然是可能的,不是吗?怎么做?
最好是
match(`『` and `』`)
{
print(what comes between them)
}
试过这个,但没用:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class text_processing
{
@SuppressWarnings("resource")
public static void main(String[] args) throws IOException
{
String sCurrentLine;
BufferedReader br = new BufferedReader(new FileReader("/home/matthias/Workbench/SUTD/1_February/brute_force/items.csv"));
Pattern p = Pattern.compile("/『(.*?)』/");
while ((sCurrentLine = br.readLine()) != null)
{
Matcher m = p.matcher(sCurrentLine);
System.out.println(m);
}
}
}
感谢您的考虑
下面是你的正则表达式
"『(.*?)』"
在此处查看工作示例:https://regex101.com/r/lO8xR1/1
String text = ...; // your text
Pattern pat = Pattern.compile( "『([^』]*)』" );
Matcher mat = pat.matcher( text );
if( mat.find() ){
System.out.println( mat.group(1) );
}
您可以重复使用它来查找 所有 次出现:
while( mat.find() ){
System.out.println( mat.group(1) );
}
我想通过以下文本根据 java 正则表达式模式提取某些特定元素:
『卥』
这个元素『卥』
,我想我总能找到『
和』
之间的项目并提取它,这应该是可行的,因为它们很漂亮不寻常的实体,因此它应该是识别和提取它们之间的任何内容的良好基础,即 卥
有很多关于使用 java 正则表达式模式匹配器匹配整个 类 字符的信息,但我没有找到太多关于只匹配一两个特定字符并从中删除内容的信息.我想这当然是可能的,不是吗?怎么做?
最好是
match(`『` and `』`)
{
print(what comes between them)
}
试过这个,但没用:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class text_processing
{
@SuppressWarnings("resource")
public static void main(String[] args) throws IOException
{
String sCurrentLine;
BufferedReader br = new BufferedReader(new FileReader("/home/matthias/Workbench/SUTD/1_February/brute_force/items.csv"));
Pattern p = Pattern.compile("/『(.*?)』/");
while ((sCurrentLine = br.readLine()) != null)
{
Matcher m = p.matcher(sCurrentLine);
System.out.println(m);
}
}
}
感谢您的考虑
下面是你的正则表达式
"『(.*?)』"
在此处查看工作示例:https://regex101.com/r/lO8xR1/1
String text = ...; // your text
Pattern pat = Pattern.compile( "『([^』]*)』" );
Matcher mat = pat.matcher( text );
if( mat.find() ){
System.out.println( mat.group(1) );
}
您可以重复使用它来查找 所有 次出现:
while( mat.find() ){
System.out.println( mat.group(1) );
}