什么是将一段文本解析为RealBasic中可用于Windows,Mac和Linux的段落的最可靠方法?

时间:2011-08-28 23:44:42

标签: realbasic

我正在使用RealBASIC 2011r3编写一个软件,需要一种可靠的,跨平台的方法来将字符串分成段落。我一直在使用以下内容,但它似乎只适用于Linux:

dim pTemp() as string
pTemp = Split(txtOriginalArticle.Text, EndOfLine + EndOfLine)

当我在Mac上尝试这个时,它将所有内容作为单个段落返回。在RB支持的所有三个构建目标上,使这个工作可靠的最佳方法是什么?

2 个答案:

答案 0 :(得分:4)

EndofLine根据平台而变化,具体取决于创建字符串的平台。您需要检查字符串中EndOfLine的类型。我相信它是sMyString.EndOfLineType。一旦你知道它是什么,你就可以拆分它。

EndOfLine还有其他属性。它可以是EndOfLine.Macintosh / Windows / Unix。

EndOfLine docs:http://docs.realsoftware.com/index.php/EndOfLine

答案 1 :(得分:1)

我几乎总是在继续之前搜索并替换换行符的组合。我通常会做几行:

yourString = replaceAll(yourString,chr(10)+chr(13),"<someLineBreakHolderString>") yourString = replaceAll(yourString,chr(13)+chr(10),"<someLineBreakHolderString>") yourString = replaceAll(yourString,chr(10),"<someLineBreakHolderString>") yourString = replaceAll(yourString,chr(13),"<someLineBreakHolderString>")

此处的订单很重要(在个人10之前执行10 + 13)因为您不想最终用两个换行符替换包含10和13的换行符。

这有点麻烦,我不建议使用它来实际修改原始字符串,但在尝试进一步解析字符串之前,它肯定有助于将所有换行符转换为相同的项目。