import java.util.Scanner; //导入方法依赖的package包/类
private List extractJsEmbeddings(String text, int sourceStart) {
List embeddings = new LinkedList<>();
// beginning comment around the script
int start = 0;
for (; start < text.length(); start++) {
char c = text.charAt(start);
if (!Character.isWhitespace(c)) {
break;
}
}
if (start < text.length() && text.startsWith("
int end = text.length() - 1;
while(end > -1 && Character.isWhitespace(text.charAt(end))) {
end--;
}
if (end > 4) {
int index = text.indexOf("-->", end - 4);
if (index != -1) { //NOI18N
String helpText = text.substring(0, index);
if (helpText.lastIndexOf("")) { //NOI18N
text = helpText;
}
}
}
}
}
// inline comments inside script
Scanner scanner = new Scanner(text).useDelimiter("()"); //NOI18N
while (scanner.hasNext()) {
scanner.next();
MatchResult match = scanner.match();
embeddings.add(new EmbeddingPosition(sourceStart + match.start(), match.group().length()));
}
return embeddings;
}