Pattern pattern = Pattern.compile("("+str+")\\b");
Matcher matcher = pattern.matcher(line.toLowerCase(Locale.ENGLISH));
if(matcher.find()){
//Doing something
}
bu verili duruma bir sorun var belli bir çizgide her kelimenin başlangıç endekslerini bulmaktır ne yapmak istediğinizi, java bütün kelimeleri eşleşen ilgili bir sorun var) (
line = "Watson has Watson's items.";
str = "watson";
da diğerini eşleştirme olmadan burada sadece ilk watson ile eşleştirmek istediğiniz ve ben bu durumda
Şunu açıklayabilir misiniz * Benim modelimin boş alan kontrolü olmasını istemiyorum * lütfen? Bir * kelime * ve izin verilen * içerik * için gereksiniminiz nedir? Bilirsiniz, tüm sözcüklerden sonra kesme işlemlerine izin vermek için '(?! ') Gibi bir göz atabilirsin. –
Eğer ilk 'watson'un başlangıç indeksini istiyorsanız, neden' String # indexOf' işlevini kullanmıyorsunuz? – SomeJavaGuy
@ WiktorStribiyeni kesme işaretleri sadece bir örnektir. – user3430912