Próbujęsprawdzenie, czy sznurek zaczyna i kończy się liczba znaków za pomocą regex
String string = "123456";
if(string.startsWith("[0-9]") && string.endsWith("[0-9]")){
//code
}
A jeśli klauzula nie jest tzw.
Próbujęsprawdzenie, czy sznurek zaczyna i kończy się liczba znaków za pomocą regex
String string = "123456";
if(string.startsWith("[0-9]") && string.endsWith("[0-9]")){
//code
}
A jeśli klauzula nie jest tzw.
nie wolno używać regex:
Character.isDigit(string.charAt(0)) &&
Character.isDigit(string.charAt(string.length()-1))
(patrz Character.isDigit()
)
Metody startsWith()
i endsWith()
w klasie String
akceptują tylko ciąg, a nie wyrażenie regularne.
To prawda, ale w obecnej formie jest to raczej komentarz niż odpowiedź. Jak zasugerowałbyś im "... [sprawdź], czy ciąg zaczyna się i kończy cyframi."? – Leigh
Można użyć metody matches
na String
wygląda następująco:
public static void main(String[] args) throws Exception {
System.out.println("123456".matches("^\\d.*?\\d$"));
System.out.println("123456A".matches("^\\d.*?\\d$"));
System.out.println("A123456".matches("^\\d.*?\\d$"));
System.out.println("A123456A".matches("^\\d.*?\\d$"));
}
Wyjście:
true
false
false
false
Proszę postępować zgodnie z fragmentem kodu.
String variableString = "012testString";
Character.isDigit(string.charAt(0)) && variableString.Any(c => char.IsUpper(c));
Co skłoniło cię do przekonania się, że to argument regex? –
Gdzie jest nazwa zmiennej? –
Czy to tylko ja, czy też nie ma pytań w poście? – Akunosh