|
虽然该问题可以变相解决,不过我觉得如果有这种函数的话平时也蛮有用的哈...
http://bbs.csdn.net/topics/300243145
|
|
uses
strutils; 使用ReverseString将字符串翻转一下 |
|
|
如果只是考虑第一次出现的情况,LastDelimiter,反向第一次出现的位置
|
|
|
这个方法我知道哈...
不过这是我所知道的最简单的方法。 |
|
|
最简单的就是自己写。
|
|
|
bdmh果然博学多才啊...
不过有一个问题: 如果 s:='a.b.c'; i:=LastDelimiter('.',s)+1; ShowMessage(Copy(s,i,MaxInt)); 则正确返回:c 而如果 s:='a.b.c'; i:=LastDelimiter('.d',s)+1; ShowMessage(Copy(s,i,MaxInt)); 按理我需要的是:空 现在返回:c 即,如果肯定能pos到时正确,没pos到时结果是不正确的... |
|
|
如果只是查找一个单字符(Char)的话,还可以用StrRScan.
当然要注意它返回的不是位置,而是指针,就看合不合你的使用了. 相反从左查找用StrScan. |
|||
|
你把分隔符设为'.d',他认的还是'.',所以你返回的还是'c'
delphi help When working with multi-byte character sets (MBCS), S may contain double byte characters, but the delimiters listed in the Delimiters parameter must all be single byte non-null characters. |
|
|
看到了,好象只支持单字符...
没有匹配到时返回0,看来仅仅用在一些特殊的时候,对于大部分的匹配字符串的时候还是得自己去写哈!!! |
|
delphi lazarus opengl
网页操作自动化, 图像分析破解,游戏开发










