在 Delphi 编译器和 FPC 中如何在 Object Pascal 中查找字符是字母数字还是下划线?
How in Object Pascal find whether a character is alphanumeric or underscore working in both Delphi compiler and FPC?
互联网上到处都是类似或相同的问题,但答案对我不起作用。我们开发多平台产品,它在 Delphi 的编译器和 FPC 下编译。
首先,我使用了:
Uses:
System.Character;
和
Character.TCharacter.IsLetterOrDigit(..)
,但在FPC下无法编译,所以根据其他资料,我使用:
Uses:
Character;
和
TCharacter.IsLetterOrDigit(..)
反之,但还是不能在FPC下编译。
有人能找到一种方法使代码在 Delphi 编译器和 FPC 上都能工作吗?我没有设置 FPC 来处理我的项目,所以我无法自己弄清楚如何修复代码以在 FPC 中工作(我只能通过构建服务器以复杂的方式测试它)并且可以'找不到方法,怎么做。
我也想用正则表达式写,但是同事说,这对他们来说太复杂了。
Delphi 和 FPC 都包含一个名为 TCharacter
的 class,它公开了一个名为 IsLetterOrDigit
的方法。换句话说,你的问题前提是错误的。使用 TCharacter.IsLetterOrDigit
.
是完全合理的
文档链接:
- Delphi: http://docwiki.embarcadero.com/Libraries/en/System.Character.TCharacter
- FPC:https://www.freepascal.org/docs-html/3.0.0/rtl/character/tcharacter.html
您使用的 FPC 版本完全有可能已过时,这可以解释您的代码失败的原因。尽管这是猜测,因为您没有包含错误消息的任何详细信息。
互联网上到处都是类似或相同的问题,但答案对我不起作用。我们开发多平台产品,它在 Delphi 的编译器和 FPC 下编译。 首先,我使用了:
Uses:
System.Character;
和
Character.TCharacter.IsLetterOrDigit(..)
,但在FPC下无法编译,所以根据其他资料,我使用:
Uses:
Character;
和
TCharacter.IsLetterOrDigit(..)
反之,但还是不能在FPC下编译。
有人能找到一种方法使代码在 Delphi 编译器和 FPC 上都能工作吗?我没有设置 FPC 来处理我的项目,所以我无法自己弄清楚如何修复代码以在 FPC 中工作(我只能通过构建服务器以复杂的方式测试它)并且可以'找不到方法,怎么做。
我也想用正则表达式写,但是同事说,这对他们来说太复杂了。
Delphi 和 FPC 都包含一个名为 TCharacter
的 class,它公开了一个名为 IsLetterOrDigit
的方法。换句话说,你的问题前提是错误的。使用 TCharacter.IsLetterOrDigit
.
文档链接:
- Delphi: http://docwiki.embarcadero.com/Libraries/en/System.Character.TCharacter
- FPC:https://www.freepascal.org/docs-html/3.0.0/rtl/character/tcharacter.html
您使用的 FPC 版本完全有可能已过时,这可以解释您的代码失败的原因。尽管这是猜测,因为您没有包含错误消息的任何详细信息。