<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: рег. выраж. в скрипте для замены прямых кавычек на кавычки-елочки]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=11311&amp;type=atom" />
	<updated>2016-03-23T15:50:55Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=11311</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: рег. выраж. в скрипте для замены прямых кавычек на кавычки-елочки]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=101979#p101979" />
			<content type="html"><![CDATA[<p>Есть ещё такой &quot;атас&quot;, но вроде правильно обрабатывающий тэги, пробелы и вложенные кавычки.</p><div class="codebox"><pre><code>
text = 
(
&quot;&quot;В русских текстах используются &quot;ёлочки&quot; или &quot;лапки&quot;.&quot;

o&quot;жидать, &quot;предполагать&quot;, &quot;пароль: a&quot;a&quot;a&quot;, &quot;планировать&quot; &#039;gh&#039;

&quot;&quot;Вложенные &quot;пары&quot; &quot;пары&quot; &quot;пары&quot;  кавычек&quot;  &quot;Вложенные &quot;пары&quot; кавычек!&quot; &quot;пары&quot; &quot;пары&quot; &quot;пары&quot; &quot;Вложенные &quot;пары&quot; &quot;пары&quot; &quot;пары&quot; кавычек&quot;
&quot;Вложенные &quot;пары 
&quot;кавычек&quot; кавычек?&quot;&quot;
——
&quot;Вложенные &quot;пары 
&quot;кавычек&quot; кавычек!&quot;
&lt;p&gt;Так вот: девушка с нормальной &quot;психикой и не извращённым&quot;&quot; характером будет позитивно реагировать на рассказ об увлечениях знакомящегося с нею &quot;пасса&#039;&#039;&#039;жира&quot;; в случае же характера идиотского она будет за всё подряд его критиковать, противопоставляя ему свой собственный светлый, достойный всяческого внимания, образ. Нужно лишь навостриться выискивать в женской речи часто встречающиеся фразы типа:  &quot;ну уж нет... &quot;&quot;  &quot;А я &#039;э&#039;того&#039; не люблю&quot;, &quot;Вот странно! А я... &quot;, &quot;Вот уж никогда не стала бы... &quot;, &quot;А вот я... &quot;, &quot;А ------- я... &quot; &quot;ну уж нет...&quot;  &quot;ну уж нет... &quot;&quot; - или что-то в этом роде, чтобы научиться ставить диагноз такой дамочке. Мой телефонный знакомый любил говаривать: &quot;А баба - это уже диагноз&quot;. Этот критерий выглядит несколько изощрённым, но он самый точный и самый лучший. Проверено многократно.&lt;/ACRONYM&gt;&lt;/p&gt;

&quot;пары&quot; &quot;пары&quot; &quot;&quot;Вложенные &quot;пары&quot; &quot;пары,&quot; &quot;пары&quot; &quot;пары&quot; &quot;пары&quot; &quot;пары.&quot; кавычек&quot; &lt;B class=&quot;hhh&quot;&gt;jkkk&lt;/B&gt; &quot;Вложенные &quot;пары&quot; кавычек!&quot; &quot;пары:&quot; &quot;пары—&quot; &quot;пары&quot;
&quot;Вло1женные &quot;пары кавычек кавычек!&quot;&quot;
&quot;Вло2женные &quot;пары &quot;кавычек&quot; кавычек!&quot;&quot;
&lt;span title=&quot;Gh&quot; class=&quot;Gh&quot;&gt;n&lt;/span&gt; &quot;Nafa&quot; &#039;Al7 Ya&amp;#63 Min&lt;span title=&quot;Ma&quot; class=&quot;MS&quot;&gt; &quot;пары:&quot; &quot;пары—&quot; &quot;пары&quot;`r`n&lt;B class=&quot;hhh&quot;&gt;jkkk&lt;/B&gt;&quot;Слышат ли они&lt;th class=&quot;22&quot;&gt;
&lt;span title=&quot;Gnh&quot; class=&quot;h&quot;&gt;n&lt;/span&gt; Naf &#039;A Yakn&amp;#363 Muin&lt;span title=&quot;Mn&quot; class=&quot;MS&quot;&gt;&quot;пары:&quot; &quot;пары—&quot; &quot;пары&quot;`r`n&lt;B class=&quot;hhh&quot;&gt;jkkk&lt;/B&gt;&quot;Слышат ли они&lt;th class=&quot;22&quot;&gt;

&quot;пары:&quot; &quot;пары—&quot; &quot;пары&quot;`r`n&lt;B class=&quot;hhh&quot;&gt;
&quot;пары:&quot; &quot;пары—&quot; &quot;пары&quot;&lt;B class=&quot;hhh&quot;&gt;
&quot;пары:&quot; &quot;пары—&quot; &quot;пары&quot;&quot;&lt;B class=&quot;hhh&quot;&gt;
&quot;пары:&quot; &quot;пары—&quot; &quot;пары&quot;
)

loop, 10
{
      text := RegExReplace(text, &quot;«([^«»]*)«([^«»]*)»&quot;, &quot;«$1«$2»&quot;)
      text := RegExReplace(text, &quot; &quot;&quot;([\s?\)\]\}\,\.\:\;\!\?…&quot;&quot;&#039;])&quot;, &quot;n~b~s~p&quot;&quot;$1&quot;)
      text := RegExReplace(text, &quot;((^|[\s]|&amp;nbsp;)([\(\[\{&quot;&quot;]|\d+)*)([&quot;&quot;])(\S([^&quot;&quot;]*?|.*?\x20[&quot;&quot;]\x20.*?)\S|[^&quot;&quot;\s])[&quot;&quot;]((\d+|[\)\]\}\,\.\:\;\!\?…&quot;&quot;])*($|[\s]|&amp;nbsp;))&quot;, &quot;$1«$5»$7&quot;)
      text := RegExReplace(text, &quot;n~b~s~p&quot;, &quot; &quot;)
      text := RegExReplace(text, &quot;«([^«»]*)«([^«»]*)»&quot;, &quot;«$1„$2“&quot;)

}

msgbox % text
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[DD]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25263</uri>
			</author>
			<updated>2016-03-23T15:50:55Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=101979#p101979</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: рег. выраж. в скрипте для замены прямых кавычек на кавычки-елочки]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=101059#p101059" />
			<content type="html"><![CDATA[<p>Спасибо!</p>]]></content>
			<author>
				<name><![CDATA[Maxim]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=32458</uri>
			</author>
			<updated>2016-02-13T12:44:54Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=101059#p101059</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: рег. выраж. в скрипте для замены прямых кавычек на кавычки-елочки]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=101051#p101051" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>[v1.0.90+]: For performance, \d, \D, \s, \S, \w, \W, \b and \B recognize only ASCII characters by default, even on Unicode builds. If the pattern begins with (*UCP), Unicode properties will be used to determine which characters match. For example, \w becomes equivalent to [\p{L}\p{N}_] and \d becomes equivalent to \p{Nd}.</p></blockquote></div><p><a href="https://autohotkey.com/docs/misc/RegEx-QuickRef.htm">https://autohotkey.com/docs/misc/RegEx-QuickRef.htm</a></p>]]></content>
			<author>
				<name><![CDATA[Malcev]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26930</uri>
			</author>
			<updated>2016-02-12T19:12:16Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=101051#p101051</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: рег. выраж. в скрипте для замены прямых кавычек на кавычки-елочки]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=101050#p101050" />
			<content type="html"><![CDATA[<p><strong>Malcev</strong> указал на опцию (*UCP), без которого юникод буквы не совпадают с \w.<br />Однако его вариант не сработает с вложенными кавычками.<br /><strong>teadrinker</strong>, исправленный вариант:<br /></p><div class="codebox"><pre><code>text = 
(
&quot;Нача&quot;ло&quot;, тут &quot;некий текст!&quot;  &quot;&quot;&quot; &quot;&quot; &quot;  &quot;конец.&quot;
Демонстрация &quot;кавычек &quot;в кавычках&quot;
с переносом строки&quot; конец.
)
MsgBox, % RegExReplace(text, &quot;(*UCP)(?&lt;=\s|^)&quot;&quot;(.*?)&quot;&quot;(?=\W|$)&quot;, &quot;«$1»&quot;) ; Malcev
MsgBox, % ReplaceQuotesToElki(text)

ReplaceQuotesToElki(text) {
	text := RegExReplace(text, &quot;m)(*UCP)(?&lt;=\s|^)&quot;&quot;(?=\w)&quot;, &quot;«&quot;)
	text := RegExReplace(text, &quot;m)(*UCP)(?&lt;=[^\s&quot;&quot;])&quot;&quot;(?=\W|$)&quot;, &quot;»&quot;)
	Return text
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[stealzy]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=31937</uri>
			</author>
			<updated>2016-02-12T18:46:02Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=101050#p101050</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: рег. выраж. в скрипте для замены прямых кавычек на кавычки-елочки]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=101049#p101049" />
			<content type="html"><![CDATA[<p>А если предположить, что в слове может быть кавычка просто как литера, то можно так:<br /></p><div class="codebox"><pre><code>text = o&quot;жидать, &quot;предполагать&quot;, &quot;пароль: a&quot;a&quot;a&quot;, &quot;планировать&quot;
MsgBox, % RegExReplace(text, &quot;(*UCP)(?&lt;=\s|^)&quot;&quot;(.*?)&quot;&quot;(?=\W|$)&quot;, &quot;«$1»&quot;)</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Malcev]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26930</uri>
			</author>
			<updated>2016-02-12T17:47:29Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=101049#p101049</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: рег. выраж. в скрипте для замены прямых кавычек на кавычки-елочки]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=101048#p101048" />
			<content type="html"><![CDATA[<p>Если есть уверенность, что число кавычек чётное (т. е. текст написан без ошибок), тогда просто:<br /></p><div class="codebox"><pre><code>text = &quot;ожидать&quot;, &quot;предполагать&quot;, &quot;намереваться&quot;, &quot;планировать&quot;
MsgBox, % RegExReplace(text, &quot;&quot;&quot;(.*?)&quot;&quot;&quot;, &quot;«$1»&quot;)</code></pre></div><p><strong>stealzy</strong>, а вот ваш пример не работает:<br /></p><div class="codebox"><pre><code>text = &quot;ожидать&quot;, &quot;предполагать&quot;, &quot;намереваться&quot;, &quot;планировать&quot;

MsgBox, % ReplaceQuotesToElki(text)

ReplaceQuotesToElki(text) {
	Static EXPR := [&quot;(?&lt;=\s)&quot;&quot;(?=\w)&quot;, &quot;«&quot;, &quot;m)^&quot;&quot;(?=\w)&quot;, &quot;«&quot;, &quot;(?&lt;=[^\s&quot;&quot;])&quot;&quot;(?=\W)&quot;, &quot;»&quot;, &quot;m)(?&lt;=[^\s&quot;&quot;])&quot;&quot;$&quot;, &quot;»&quot;]
	loop % EXPR.MaxIndex()/2
		text := RegExReplace(text, EXPR[2*A_Index-1], EXPR[2*A_Index])
	Return text
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2016-02-12T16:31:57Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=101048#p101048</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: рег. выраж. в скрипте для замены прямых кавычек на кавычки-елочки]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=101036#p101036" />
			<content type="html"><![CDATA[<p>Коллеги, анализом текста эту задачу принципиально нельзя решить однозначно.<br />Все просто, если воспользоваться грамматикой языка — открывающая кавычка стоит вначале текста или после пробела, за ней идет слово. Закрывающая кавычка идет после слова, но перед знаком препинания или пробелом.<br /></p><div class="codebox"><pre><code>string = 
(
&quot;BOL&quot;, this is &quot;Text here!&quot; &quot;&quot;&quot; &quot;&quot; &quot; &quot;EOL&quot;
I can do &quot;those &quot;things&quot;
too, btw.&quot; end.
)
msgbox % string := RegExReplace(string, &quot;(?&lt;=\s|^)&quot;&quot;(?=\w|[А-я])&quot;, &quot;«&quot;)
msgbox % string := RegExReplace(string, &quot;(?&lt;=[^\s&quot;&quot;])&quot;&quot;(?=\W|$)&quot;, &quot;»&quot;)</code></pre></div><p>Ну и сразу функция:<br /></p><div class="codebox"><pre><code>ReplaceQuotesToElki(text) {
	text := RegExReplace(text, &quot;m)(*UCP)(?&lt;=\s|^)&quot;&quot;(?=\w)&quot;, &quot;«&quot;)
	text := RegExReplace(text, &quot;m)(*UCP)(?&lt;=[^\s&quot;&quot;])&quot;&quot;(?=\W|$)&quot;, &quot;»&quot;)
	Return text
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[stealzy]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=31937</uri>
			</author>
			<updated>2016-02-12T01:17:08Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=101036#p101036</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: рег. выраж. в скрипте для замены прямых кавычек на кавычки-елочки]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=101033#p101033" />
			<content type="html"><![CDATA[<p>Количество кавычек может быть нечётным?</p>]]></content>
			<author>
				<name><![CDATA[Drugoy]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27463</uri>
			</author>
			<updated>2016-02-11T20:45:15Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=101033#p101033</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: рег. выраж. в скрипте для замены прямых кавычек на кавычки-елочки]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=101017#p101017" />
			<content type="html"><![CDATA[<p>Слова в кавычках могут быть в любой части текста. Замены я делаю через окно «Найти и заменить», это окно позволяет делать замены во всех предложениях.</p>]]></content>
			<author>
				<name><![CDATA[Maxim]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=32458</uri>
			</author>
			<updated>2016-02-11T12:43:58Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=101017#p101017</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: рег. выраж. в скрипте для замены прямых кавычек на кавычки-елочки]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=101008#p101008" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Maxim пишет:</cite><blockquote><p>&quot;ожидать, предполагать, намереваться, планировать&quot;.</p><p>То есть между прямыми кавычками может быть от 1 до 15 слов с запятыми и без запятых.</p></blockquote></div><p>Слова в кавычках идут отдельной строкой, в начале/в конце/с середине или по разному? Сколько пар кавычек в строке, одна или может быть больше?</p>]]></content>
			<author>
				<name><![CDATA[equipment66]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27128</uri>
			</author>
			<updated>2016-02-11T04:47:25Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=101008#p101008</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: рег. выраж. в скрипте для замены прямых кавычек на кавычки-елочки]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=101007#p101007" />
			<content type="html"><![CDATA[<p>Хорошо, приведу конкретный пример: необходимо&nbsp; заменить прямые кавычки на кавычки-елочки для следующего&nbsp; &quot;ожидать, предполагать, намереваться, планировать&quot;.</p><p>То есть между прямыми кавычками может быть от 1 до 15 слов с запятыми и без запятых.</p>]]></content>
			<author>
				<name><![CDATA[Maxim]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=32458</uri>
			</author>
			<updated>2016-02-11T03:32:34Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=101007#p101007</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: рег. выраж. в скрипте для замены прямых кавычек на кавычки-елочки]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=101000#p101000" />
			<content type="html"><![CDATA[<p><strong>Maxim</strong>, условие малопонятно. Что значит 1-15 слов? То есть, не все нужно менять? Сколько конкретно? Откуда начинать?</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2016-02-10T17:07:13Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=101000#p101000</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AHK: рег. выраж. в скрипте для замены прямых кавычек на кавычки-елочки]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=100989#p100989" />
			<content type="html"><![CDATA[<p>Уважаемые форумчане, я постоянно сталкиваюсь с тем, что мне необходимо менять&nbsp; вот такие кавычки &quot;ожидать&quot;, &quot;предполагать&quot;, &quot;намереваться&quot;, &quot;планировать&quot; на кавычки-елочки «ожидать», «предполагать», «намереваться», «планировать».</p><p>Я в скрипте (который вызывает окно Найти и заменить) использую регулярные выражения найти \&quot;(\w+)\&quot; и заменить на «$1».</p><p>Пожалуйста, помогите создать мне скрипт, который бы&nbsp; находил 1-15 слов в прямых кавычках и заменял бы их на кавычки-елочки.</p>]]></content>
			<author>
				<name><![CDATA[Maxim]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=32458</uri>
			</author>
			<updated>2016-02-10T11:45:32Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=100989#p100989</id>
		</entry>
</feed>
