04-27-2008, 06:06 PM
To calculate length in characters, convert to UTF-16.
Macro
Macro
int h=id(15 "Notepad")
str s="ψω_ϐϒ *"
s.setwintext(h)
int i length flags
str rx="_\S+"
i=findrx(s rx i flags|8 length)
if(i<0) ret
str s1.get(s 0 i) s2.get(s i length) ;;get substrings of needed length
s1.unicode; s2.unicode ;;convert to UTF-16
i=s1.len/2; length=s2.len/2 ;;num bytes to num chars
SendMessage(h EM_SETSEL i i+length)