我有以下格式的文字格式:
[1/@DaysInMonth @FirstTitle] @SecondTitle
@DaysInMonth根据所选月份得出天数,@ FirstTitle和@SecondTitle是字母数字。
我尝试了以下内容:
[\1(?<DaysInMonth>\d\s+) (?<FirstTitle>[\w\s \]+)\] (?<SecondTitle>[\w\s \]+)$]
但它似乎没有起作用。匹配字符为53个字符。 [Link]
我该如何解决这个问题?
@ baddger964回答后编辑:
我想在我的应用程序中使用:
private Regex _regex = null;
string value = "[1/30 Development In Progress] Development In Progress";
_regex = new Regex(@"\[\d+\/(?<DaysInMonth>\d+)\s(?<FirstTitle>[\w\s]+)\]\s(?<SecondTitle>[\w\s]+)").Match(value);
string value1 = _regex.Groups["DaysInMonth"].Value;
string value2 = _regex.Groups["FirstTitle"].Value;
string value3 = _regex.Groups["SecondTitle"].Value;
你的回答非常感谢。
谢谢。
答案 0 :(得分:2)
也许你可以使用它:
@@ -10,6 +10,9 @@
property int radiusShadow: 20
property int iOptionHeight: 30
+ property int animationDuration: 500 // ms
+
+ Behavior on y { NumberAnimation { duration: window.animationDuration } }
Rectangle {
id: panel
@@ -18,6 +21,7 @@
height: menu1.height + menu2.heightVisible + 2*radiusShadow
width: window.width - 2*radiusShadow
color: "transparent"
+ Behavior on height { NumberAnimation { duration: window.animationDuration } }
Rectangle {
id: menu1
@@ -25,6 +29,7 @@
anchors { bottom: parent.bottom; bottomMargin: radiusShadow }
width: parent.width
height: column1.children.length * iOptionHeight
+ Behavior on height { NumberAnimation { duration: window.animationDuration } }
Column {
id: column1
@@ -52,6 +57,8 @@
width: parent.width
height: column2.children.length * iOptionHeight
+ Behavior on height { NumberAnimation { duration: window.animationDuration } }
+
z: -1
Column {
@@ -64,6 +71,7 @@
color: "blue";
height: iOptionHeight; width: parent.width
Text { text: qsTr("option 4") }
+ Behavior on height { NumberAnimation { duration: window.animationDuration } }
MouseArea {
anchors.fill: parent
@@ -77,6 +85,7 @@
color: "pink";
Text { text: qsTr("option 3") }
height: iOptionHeight; width: parent.width
+ Behavior on height { NumberAnimation { duration: window.animationDuration } }
}
}
}
@@ -105,4 +114,4 @@
color: "#40000000"
source: panel
}
-}+}
注意:
\[\d+\/(?<DaysInMonth>\d+)\s(?<FirstTitle>[\w\s]+)\]\s(?<SecondTitle>[\w\s]+)
=&gt;不要逃避&#34; 1&#34;因为\1
与最后定义的匹配组匹配相同的东西。
\1
=&gt;你必须逃避这个[
因为\[
你创建了一组caracters
所以你的正则表达式:
[
说:我希望从这组特征中匹配一个角色:
[\1(?<DaysInMonth>\d\s+) (?<FirstTitle>[\w\s \]+)\] (?<SecondTitle>[\w\s \]+)$]
答案 1 :(得分:0)
喜欢这个? 以下是正常正则表达式的一个例子。