0

Scrivener と呼ばれる小説執筆プログラムで引き続き使用しようとしている Microsoft Word で書かれたテキストを受け取りました。このプログラムは RegEx の置き換えをサポートしているようで、RegEx にクリーンアップを行わせようとしています。

Word では、テキストの各行の後に次のように改行が作成されます。

Lorem ipsum dolor sit amet, (改行)

etiam liber sonet pro te (改行)

laboures maiestatis te ius (改行)

(改行)

「cuには運動神経があります。」Ad vel probo eruditi delicatissimi. (改行)

(改行)

Pro id harum admodum hendrerit, praesent maiestatis at sit. (改行)

At sit munere latine virtute, ei vim brute populo, oblique nominavi no (newline)

ネク。Quo et vituperata percipitur, sed sint putent adolescens in. (改行)

そのため、実際には改行があるはずだった場所に 2 つあるようです。したがって、正しい改行が通常 2 つの改行で発生するテキスト内の単一の改行に一致できる正規表現が必要です。

これを行う方法がまったくわかりません。誰か道を教えてくれませんか?

よろしく、ジョン

4

1 に答える 1

0

I don't know what is the support of Regexes in Scrivener, but maybe this regex can help :

(?<!\r\n)\r\n(?!\r\n)

Explanation :

(?<!\r\n) # negative look behind for new line
  \r\n    # new line
(?!\r\n)  # negative look ahead for new line

It will match each new line that is not followed by another new line and that does not follows a new line.

Maybe you will need to use \n instead of \r\n.

I tested with Notepad++ with this input :

Lorem ipsum dolor sit amet, 
etiam liber sonet pro te, 
labores maiestatis te ius, 

"cu has exerci mentitum apeirian." Ad vel probo eruditi delicatissimi. 

Pro id harum admodum hendrerit, praesent maiestatis at sit. 
At sit munere latine virtute, ei vim brute populo, oblique nominavi no 
nec. Quo et vituperata percipitur, sed sint putent adolescens in. 

Use the Replace feature with regex options :

Notepad++ Replace with Regex

And obtained this result after replacement :

Lorem ipsum dolor sit amet, etiam liber sonet pro te, labores maiestatis te ius, 

"cu has exerci mentitum apeirian." Ad vel probo eruditi delicatissimi. 

Pro id harum admodum hendrerit, praesent maiestatis at sit. At sit munere latine virtute, ei vim brute populo, oblique nominavi no nec. Quo et vituperata percipitur, sed sint putent adolescens in. 
于 2013-10-17T23:03:12.247 に答える