LINUX.ORG.RU

Legioner, KennyMinigun

Вот код на погонять.

        String phrase = "этот исскуственный загон";
        String word = "исскуств";
        String correction = "искусств";

        Pattern REGEX = Pattern.compile("(\\w\\S*"+word+"\\S*\\W)", Pattern.UNICODE_CHARACTER_CLASS | Pattern.CASE_INSENSITIVE | Pattern.UNICODE_CASE | Pattern.LITERAL);
        Matcher matcher = REGEX.matcher(phrase);
        if (matcher.find()) {
            String w = matcher.group().replace(word, correction);
            System.out.println(""+matcher.group()+" - "+w.trim());
        }

bvn13 ★★★★★
() автор топика
Ответ на: комментарий от bvn13

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegexMatches {

   private static String REGEX = "\\w*ddd\\w*";
   private static String INPUT = "aaa bbb ccdddfff gg";

   public static void main(String[] args) {

      Pattern p = Pattern.compile(REGEX);
      Matcher m = p.matcher(INPUT);

      if (m.find()) {
            System.out.println(m.group(0));
      }else{
            System.out.println("НЕ СОВПАДАЕТ");
      };
   }
}

anonymous
()
Ответ на: комментарий от bvn13
        String phrase = "а роза упала на лапу азора";
        String subword = "оз";
        Pattern pattern = Pattern.compile("\\w*" + subword + "\\w*", UNICODE_CHARACTER_CLASS);
        Matcher matcher = pattern.matcher(phrase);
        while (matcher.find()) {
            String word = matcher.group();
            System.out.println(word);
        }
Legioner ★★★★★
()
Последнее исправление: Legioner (всего исправлений: 1)
Ответ на: рояль в кустах от anonymous

Я так и не понял, что он хотел, если честно. Но в классе Matcher есть методы replaceAll и др. для замены.

Legioner ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.