を見つけるために私のテキストです:文の50%以上が大文字である場合正規表現は、ここでは、不要な大文字の単語
TESTING TESTING test test test test test
私は正規表現がtrueを返すようにしたい(またはマッチは)。
この場合、20文字のうち14文字しか大文字ではないため、falseを返します。 AppleScriptでは
、私がやるだろう:Perlで
set a to characters of "abcdefghijklmnopqrstuvwxyz"
set ac to characters of "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
set this_message to characters of "TEST TEST TEST TEST test test test test test test"
set x to 0 -- Counter
set y to 1
repeat with i from 1 to number of items in this_message
set this_item to item i of this_message
considering case
if this_item is not " " then
if this_item is in ac then
set x to x + 1
end if
end if
if this_item is in {" ", ",", ".", "-"} then
set y to y + 1
end if
end considering
end repeat
try
if (round (x/((count this_message) - y)) * 100) > 50 then
return true
else
return false
end if
on error
return false
end try
私は考えていない。ここで
は、単語全体の数を考慮したものです正規表現はこの仕事のための正しいツールです。 perlでは 'tr //'を使います。どの言語を使っていますか? – Flimzy私はPHPを使用するつもりです。しかし、もし仕事のために他の言語が良いとすれば、私はそれを使用します。 – alexy13