2011-08-27 3 views
1

용어가 @ 자동 완성을 위해 사용되는 문자열의 시작 부분에 포함되어있는 경우에만 true를 반환하는 Java의 정규식을 작성하려고합니다. 그래서 내 용어가 '일'이라면 나는 '숙제'에 대해서는 거짓을, '노동자'에게는 사실로 돌려주고 싶습니다. 심지어 '워 (wo)'라는 용어조차도 '노동자 (worker)'에게 사실이어야한다. 누구든지 도와 줄 수 있습니까? 모든 정보가 많이 감사합니다.정규식 퍼지 자동 완성 도움말

중요한지 확실하지 않은 경우 자동 완성 단어 (,), -, -, /, _ 및 공백의 일부로 이러한 특수 문자가있을 수 있습니다.

답변

4

startsWith 방법을 사용하십시오. Regexes 여기에 잔인합니다. 예를 들어,

"workers".startsWith("wo") 

은 원하는대로 true입니다.

+0

은 그것의 재미 나는 당신이 = 게시 직전이 발견) :

더 빠른 옵션이 여기에 Trie 사용하는 것은 샘플 구현입니다. 감사! –

1

여기에는 몇 가지 다른 접근 방법이 있지만 정직한 표현이 맞는지 확실하지 않습니다. 당신은 지금까지 코드의 방식으로 우리에게 아무것도주지 않았기 때문에, 내가 드릴 수있는 것은 힌트입니다.

  1. 정규식 안에서 문자열의 시작 부분에서 무언가를 확인하는 방법은 ^입니다.
  2. 문자열이 무언가로 시작하는지 확인하는 다른 간단한 방법은 startsWith을 사용하는 것입니다.
0

term.startsWith(start)을 보내시겠습니까?