我有一个包含以下信息的字符串。
Obabikon, ON 49°10′N 94°10’W 2278 km N69°W
我有一个正则表达式搜索如下:
String LongPattern = @"(~)?([0-9\?])+°([0-9\?])*′[EWO]";
return FindPattern(source, LongPattern);
应该找到< 94°10’W
>但不是吗?这个正则表达式正在为我的其余数据工作而没有任何问题。
任何线索?
答案 0 :(得分:3)
你有两种不同的悖论。比较这些:
49°10′N
94°10’W
如果您希望能够应对任何一种情况,请将您的正则表达式更改为:
"(~)?([0-9\?])+°([0-9\?])*[′’][EWO]"
或者,修复输入数据:)
答案 1 :(得分:2)
报价不同。你的主题字符串有',而你的正则表达式'。这是一个微小的差异,但他们是不同的角色......
答案 2 :(得分:0)
这里有多个符号可供分钟使用。即使在您的样本字符串中,纬度和经度的分钟部分也是不同的符号。看起来你的正则表达式中的符号与纬度中的符号相同,这就是它与经度不匹配的原因。
在你的经度中你有
在你的正则表达式中你有