온라인 필자 식별을위한 메트릭을 작성하는 스크립트 작업 중입니다. 내가 문학에서 발견 한 것들 중 하나는 대소 문자 독립적 인 각 문자 (얼마나 많은 a, 얼마나 많은 b 등)의 빈도를 세는 것입니다. 이후 각 편지에 대해 별도의 성명을 작성하고 싶지 않아, 내가 루프를 시도하고있어,하지만 난 그것을 알아낼 수 없습니다. 내가 생각할 수있는 최선의 방법은 ASCII 문자 코드를 16 진수로 변환하는 것입니다. 그러면 ... 기적적으로 기적이 일어납니다. 나는, 그것은 문자 H 전자의 X, 내가 원하는 문자를위한이 아닌 16 진수 코드로 진수를 해석하는 수행 할 때자바 스크립트를 사용하여 루프에서 별도의 문자를 추출하는 정규식
는 지금까지, 나는
element = id.toLowerCase();
var hex = 0;
for (k=97; k<122; k++){
hex = k.toString(16); //gets me to hex
letter = element.replace(/[^\hex]/g, "")//remove everything but the current letter I'm looking for
return letter.length // the length of the resulting string is how many times the ltter came up
}
하지만 물론
을 가지고있다.
이것은 최선의 방법은 아닙니다. @ ElliotBonneville의 대답을보십시오. 그러나 특정 질문에 답하기 위해 변수 컴포넌트에서 정규 표현식을 만들려면 정규식 리터럴 대신'new RegExp (string)'을 사용하십시오 :'var hexRegex = new RegExp ("[^ \\"+ hex + "] ","g "); –
@ MarkReed : [escape] (http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript/3561711#)가 필요할 수 있습니다. 3561711) 일반 문자로 원하는 경우 문자열. – hugomg