今回試した正規表現
/(?<![a-zA-Z0-9!?])[\s ](?![a-zA-Z0-9])/g
Good morning! お は よ!
を
Good morning! おはよ!
にする
コード.gs
function doGet() {
return HtmlService.createHtmlOutputFromFile("index");
}
|
意訳この機能がやること 指定したHTMLファイルを表示する |
index.html
<!DOCTYPE html>
<html>
<body>
<script>
myFunction();
function myFunction() {
var text = 'Good morning! お は よ!';
text = text.replace(/(?<![a-zA-Z0-9!?])[\s ](?![a-zA-Z0-9!?])/g, "");
console.log(text);
}
</script>
</body>
</html>
|
補足
.gs側では「SyntaxError: 量指定子 ? は無効です。」と出て ? は使えないようなので、.htmlでやっています。
テキスト画像をOCR化したときに改行が半角スペースになることがあり、その半角スペースを消したくて書きました。
var text = 'Good morning! お は よ!';
text = text.replace(/(?<![a-zA-Z0-9])[\s ](?![a-zA-Z0-9])/g, "");
=> Good morning!おはよ!
これだと ! のあとの半角スペースも消えるので
!と?も対象にして
/(?<![a-zA-Z0-9!?])[\s ](?![a-zA-Z0-9])/g,
としたのが今回試した正規表現です。
.gs側では「SyntaxError: 量指定子 ? は無効です。」と出て ? は使えないようなので、.htmlでやっています。
テキスト画像をOCR化したときに改行が半角スペースになることがあり、その半角スペースを消したくて書きました。
var text = 'Good morning! お は よ!';
text = text.replace(/(?<![a-zA-Z0-9])[\s ](?![a-zA-Z0-9])/g, "");
=> Good morning!おはよ!
これだと ! のあとの半角スペースも消えるので
!と?も対象にして
/(?<![a-zA-Z0-9!?])[\s ](?![a-zA-Z0-9])/g,
としたのが今回試した正規表現です。