2016-03-08 2 views
-1

Я самый простой из кода Thats должен сравнить две строки входов следующим образом:строка соответствует метод в Java, когда требуется сравнить два знака доллара (не избежать)

public class Validate { 
    public static void main(String[] args) { 
     String re = args[0]; 

     String input = args[1]; 

     System.out.println(input.matches(re)); 
    } 
} 

Он работает, как и ожидалось, за исключением, если ваш два входы $ и $, он просто распечатывает false. Я слышал о том, как вам нужно избегать специальных символов регулярных выражений, включая знак доллара.

Но что, если вы хотите сравнить два знака доллара и распечатать true

+3

Вы не ищете 'equals' вместо' match'? – Tunaki

+3

'String.matches' использует регулярное выражение, а' '' важно для регулярного выражения. Вместо этого вы должны использовать 'String.equals' или вывести' ''. – gonzo

+0

'$' является специальным символом в регулярном выражении (конец строки). Вы должны избежать этого – Jens

ответ

0

В Баш $$ заменяется ProcessId небольшое целое число.

+0

См. Также ** http: //stackoverflow.com/questions/22457166/why-does-echo-return-a-number? Lq = 1 ** –