일부 노드 만있는 XML 파일이 있습니다. 여하튼 노드에는 많은 속성이 있습니다. 특정 키워드가 포함 된 속성을 쿼리하고 있습니다.XPath | 속성에 키워드를 찾는 표현식 만들기 - case-insensitiv
String expression = "/posts/row[@PostTypeId='1' and @*[contains(.,'Security')]]";
이 작업은 정상적으로 작동하지만 대문자 'S'와 정확히 일치하는 것을 찾습니다. 사용자가 키워드를 제공하게하고 소문자 만 사용할지 여부는 내 손에 달려 있지 않습니다. 내가하려는 것은
//posts/row[translate(@*, ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’, ‘abcdefghijklmnopqrstuvwxyz’)]
모두를 키워드뿐만 아니라 XML 쪽에서 모두 소문자로 만들고 두 시도를 하나의 표현식으로 결합하는 것입니다.
이 내 시도하지만,
이String expression = "/posts/row[@*[contains(translate(.,'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'), '" + keyword + "')]]";
누군가가 나를 제발 도와 드릴까요 작동하지? 내 시도에서 완전히 틀렸어? 사전에
감사합니다, 보도 내가 지금 일하고하게 모르는 다음
String expression = "/posts/row[@PostTypeId='1' and @*[contains(translate(.,'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'), '" + keyword + "')]]";
와 한편이 밖으로 정렬 수있는 것 같다
, 사람이 사람이 할 수 있도록 이걸 좀 털어 놓으 셨나요?
답변 해 주셔서 감사합니다. 당신은 키워드에 관하여 맞습니다. Java String 메서드를 사용하여 유사성을 검사하기 전에이 작업을 수행했다는 사실을 잊어 버렸습니다. – user3085123