2014-08-21 4 views
-3

Как использовать регулярные выражения?Вопрос о регулярном выражении при поиске слов

+0

, если (число> 0) { ул = ""; String str123 = enter_text.getText(). ToString(). ToLowerCase(); \t \t \t \t \t Сличитель согласовани = Pattern.compile ("г (\\ W +) (\\ с)") согласовани. (Enter_text.getText() ToString() toLowerCase()..); \t \t \t \t \t в то время (Matcher.find()) \t \t \t \t \t { \t \t \t \t \t \t str1 = matcher.group (1); \t \t \t \t \t \t System.out.println ("Z letter" + str1); \t \t \t \t \t} \t \t \t \t \t ул = enter_text.getText(). ToString(). ToLowerCase(). \t \t \t \t \t \t \t заменить ("a", "1"). \t \t \t \t \t \t \t заменить ("b", "2"). \t \t \t \t \t \t \t заменить ("c", "3"). \t \t \t \t \t \t \t заменить ("d", "4"). \t \t \t \t \t \t \t заменить ("e", "5"). } – tushar

ответ

2

Я не буду давать логику замены (слишком много подачи ложки), но я могу показать вам, как найти слово, начинающееся с z.

public static void main(String args[]){ 
    String s = "abc zdefg hijk asdsaz"; 
     Pattern p = Pattern.compile("\\b(?!z)(\\w+)\\b"); 
    // \\b is word boundary matcher. 
    // ?! negative lookahead and checks if a word doesn't start with z 
    // //w+ matches one or more characters only if previuos condition holds true. 
     Matcher m = p.matcher(s); 
     while(m.find()){ 
      System.out.println(m.group()); 
     } 
    } 

O/P:

abc 
hijk 
asdsaz 
+0

Спасибо, за ур ans, я уже сделал эту часть, но столкнулся с проблемой при замене части в моем коде всякий раз, когда я нахожу Z char как начальную букву, вся моя строка не заменит – tushar

Смежные вопросы