需要为一个词典分析器逐字或按符号分割文本,我不能分开"()"没有空间

时间:2017-11-20 19:44:16

标签: java regex

Lexic Analizer enter image description here

问题是:

当我尝试用代码分割单词时:

String[] palabras = textoLexema.getText().split("\\b|\\s+");

它在图像中被分开,并且它不会分开在一起的符号(中间没有空格)。

我想知道是否有人可以帮我提出一个正则表达式,可以用空格分隔它们那些符号

1 个答案:

答案 0 :(得分:0)

嘿伙计们感谢我帮助我通过从单词“){”创建一个数组来修复它,之后我按符号拆分该符号并重新评估它们是什么。

if (palabraSinEspacios.matches("[{|}|\\[|\\]|\\(|\\)|\\;]+")) {
            //Separa delimitadores si vienen pegados segunda evaluacion
            String[] palabraSeparada = palabras[i].split("\\s*");
            for (int j = 0; j < palabraSeparada.length; j++) {
                //Filtar el arreglo de la paalabra separada por si contiene 
                //Espacios los remplaza 
                String palbraSinsEspacioSeparada = palabraSeparada[j].trim().replaceAll("\\s+", "");
                if (palbraSinsEspacioSeparada.equals("")) {
                    //Si la palabra no existe la salta y brinca al else
                } else {
                    listModelPatron.addElement("Delimitador con literales: " + palabraSeparada[j]);
                    listModelToken.addElement("Delimitador:    " + palabraSeparada[j]);
                }
            }
        }