c# - 正则表达式条件字符串仅包含英语而不是希腊语,反之亦然(希腊语而不是英语)
问题描述
我正在尝试在 C# 代码中构建一个正则表达式,以检查输入文本是否包含希腊语或英语,但不能同时包含两者,如下例所示:
Angela = true
Ανγκελα = true
AngeΛα = false
Αντζela = false
我试过以下没有运气:
[a-zA-Z\s]?[α-ωΑ-Ω\s]
[a-zA-Z\s]|[α-ωΑ-Ω\s]
解决方案
考虑到问题中提供的示例输入,您可以使用
^(?:[a-zA-Z]+|[α-ωΑ-Ω]+)$
细节
^
- 字符串的开始(?:[a-zA-Z]+|[α-ωΑ-Ω]+)
- 一个或多个 ASCII 字母或一个或多个希腊字母$
- 字符串结束。
推荐阅读
- django - 同一类Django的两个外键
- node.js - Microsoft OAuth 2.0 的 Heroku H18 错误
- node.js - @types/meteor 不适用于角度/离子
- kendo-grid - 从 Kendo-UI 网格导出数据
- ios - 如何更新以编程方式调整大小的应用程序 xibs 转换为 iphone x
- mysql - 缓存、数据库、超过 400k 列表
- c++ - 使用 lib sox 处理内存中的音频文件
- regex - PostgreSQL 搜索字符串中的整个单词而不考虑正则表达式的顺序?
- google-analytics - 我们如何使用 API / Big Query 从自定义漏斗中下载值
- css - netbeans 8.2 css 网格警告和错误