1

正規表現を使用\pardする スペースで始まり、スペースで終わるすべてのものを見つける必要がありますが、同時にスペースが含まれていません \intbl

次に、RTFテキスト ファイルが表示されます。どうもありがとう。

{\rtf1\ansi\ansicpg1252\deff0{\fonttbl{\f0\fnil Lucida Console;}{\f1\fnil\fcharset0 Lucida Console;}{\f2\fnil\fcharset0 Arial Black;}}
{\colortbl ;\red0\green0\blue0;}
{\*\generator Msftedit 5.41.21.2509;}\viewkind4\uc1\trowd\trgaph10\trleft-32\trrh240\trpaddl10\trpaddr10\trpaddfl3\trpaddfr3
\clbrdrl\brdrw15\brdrs\brdrcf1\clbrdrt\brdrw15\brdrs\brdrcf1\clbrdrr\brdrw15\brdrs\brdrcf1\clbrdrb\brdrw15\brdrs\brdrcf1 \cellx966\clbrdrl\brdrw15\brdrs\brdrcf1\clbrdrt\brdrw15\brdrs\brdrcf1\clbrdrr\brdrw15\brdrs\brdrcf1\clbrdrb\brdrw15\brdrs\brdrcf1 \cellx2000\pard\intbl\qr\cf1\lang11274\f1\fs16 val1\cell val2\cell\row\trowd\trgaph10\trleft-32\trrh240\trpaddl10\trpaddr10\trpaddfl3\trpaddfr3
\clbrdrl\brdrw15\brdrs\brdrcf1\clbrdrt\brdrw15\brdrs\brdrcf1\clbrdrr\brdrw15\brdrs\brdrcf1\clbrdrb\brdrw15\brdrs\brdrcf1 \cellx966\clbrdrl\brdrw15\brdrs\brdrcf1\clbrdrt\brdrw15\brdrs\brdrcf1\clbrdrr\brdrw15\brdrs\brdrcf1\clbrdrb\brdrw15\brdrs\brdrcf1 \cellx2000\pard\intbl\qr val3\cell val4\cell\row\pard\li-30\cf0\lang0\f0\fs24\par
\lang11274\b\f2\fs48 Texto linea1\b0\f1\fs24\par
\par
Texto linea2\lang0\f0\par
}
4

1 に答える 1

1

それは

\\pard(?:(?!\\intbl)[^ ])*[ ]

説明:

\\pard       # Match "\pard".
(?:          # Try to match...
 (?!\\intbl) #  (unless we're at the start of the string "\intbl")
 [^ ]        #  any character except space
)*           # ...any number of times.
[ ]          # Then match a space.

あなたのサンプルファイルでは、これは一致\pard\li-30\cf0\lang0\f0\fs24\parするだけです。

于 2012-07-05T12:22:44.350 に答える