Java webapp의 일부로 일부 URI에 접두어를 추가해야합니다.Javascript를 포함 할 수있는 URI를 구문 분석/추출
"controller.jsp?page=list"
된다 ...
<a href="${legacyBaseUrl}/controller.jsp?page=list">...</a>
쉽습니다. 문제는 데이터베이스의 일부 URI가 자바 스크립트를 포함하는 경우 발생합니다. 나는이 할 수 있도록하고 싶습니다 무엇
"javascript:window.open('controller.jsp?page=popup')"
... 더 나은 아직
<a href="javascript:window.open('${legacyBaseUrl}/controller.jsp?page=popup')">...</a>
또는 ...
<a href="${legacyBaseUrl}/controller.jsp?page=popup" target="_blank">...</a>
나는 단지와 떨어져 잘라 수있어 정규 표현식을 사용하지만 데이터를 살생 한 적이 없으며 데이터베이스에 자바 스크립트가있을 수 있으므로이 문제를 간단한 문자열 조작 문제로 취급하는 것에주의해야합니다.
Java에서 Javascript를 올바르게 구문 분석하고 window.open 또는 다른 JS 함수에 대한 호출을 인식/추출하는 간단한 방법이 있습니까?
저는 Rhino 나 javax.script와 같은 것들을 잠시 살펴 봤지만 조금 손실되었습니다. 이것이 나의 필요에 맞는 것인가? 정규식이 실제로 충분할까요? 어떤 제안?