要从set transaction read committed record_version;
到first
中选择文本。
需要先寻找the char before 'x' before 'y'
,然后向后寻找'y'
的第一个匹配项(或发现的最后'x'
个),然后选择直到该'x'
之前的那个。
示例:(输入->输出)
'x'
(直到abxabxaby -> abxab
的第一个出现是y
。然后直到出现的第一个倒退abxabxaby
(或找到的最后一个x
)是x
且在{之前{1}}是abxabx
)
x
(直到abxab
的第一次出现是12xabcyabcxay -> 12
,然后首先向后y
是12xabcy
并且在x
是12x
之前)>
x
(规则相同。12
,然后是abcxy -> abc
,所以abcxy
)
abcx
答案 0 :(得分:2)
您可以使用此正则表达式:
^[^y]*(?=x)
它会贪婪地找到不是y
的所有内容,直到看到x
。 “不是y
的所有内容”部分可确保找到字符串中的第一个y
。并且“贪心”部分可确保在第一个x
之前找到 last y
。
但是,如果字符串中没有y
,则此方法将无效。因此,您需要使用contains("y")
单独检查一下。
答案 1 :(得分:1)