[Ttssh2-commit] [4026] strsplit の区切り記号は1文字でなくてもよい ( 制限する必要がない ) ので、1文字のチェックを外した

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2010年 8月 21日 (土) 00:32:53 JST


Revision: 4026
          http://sourceforge.jp/projects/ttssh2/svn/view?view=rev&revision=4026
Author:   maya
Date:     2010-08-21 00:32:52 +0900 (Sat, 21 Aug 2010)

Log Message:
-----------
strsplit の区切り記号は1文字でなくてもよい(制限する必要がない)ので、1文字のチェックを外した
  空文字列や2文字以上で結合することが可能になった

Modified Paths:
--------------
    trunk/doc/en/html/macro/command/strjoin.html
    trunk/doc/ja/html/macro/command/strjoin.html
    trunk/teraterm/ttpmacro/ttl.c


-------------- next part --------------
Modified: trunk/doc/en/html/macro/command/strjoin.html
===================================================================
--- trunk/doc/en/html/macro/command/strjoin.html	2010-08-20 15:14:09 UTC (rev 4025)
+++ trunk/doc/en/html/macro/command/strjoin.html	2010-08-20 15:32:52 UTC (rev 4026)
@@ -30,12 +30,11 @@
 </p>
 
 <!--p>
-&lt;separator&gt; ‚É‚Í‹æØ‚è‹L†‚Æ‚µ‚Ĉµ‚¤•¶Žš‚ð1•¶Žš‚¾‚¯Žw’è‚·‚éB
+&lt;separator&gt; ‚É‚Í‹æØ‚è‹L†‚Æ‚µ‚Ĉµ‚¤•¶Žš—ñ‚ðŽw’è‚·‚éB
 </p-->
 
 <p>
-The &lt;count&gt; is specified the maximum number of substrings to return.<br>
-If a number of substrings is larger than &lt;count&gt;, the remaining groupmatchstr variables stores NULL.
+The &lt;count&gt; is specified the maximum number of substrings to concatenate.
 </p>
 
 <p>
@@ -65,21 +64,27 @@
 <h2>Example</h2>
 
 <pre class="macro-example">
-groupmatchstr1="Jan" 
-groupmatchstr2="Feb" 
-groupmatchstr3="Mar" 
-groupmatchstr4="Apr" 
-groupmatchstr5="May" 
-groupmatchstr6="Jun" 
-strjoin strvar "," 6
-messagebox strvar "strvar"   ; 'Jan,Feb,Mar,Apr,May,Jun'
+groupmatchstr1="Jan"
+groupmatchstr2="Feb"
+groupmatchstr3="Mar"
+groupmatchstr4="Apr"
+groupmatchstr5="May"
+groupmatchstr6="Jun"
+groupmatchstr7="Jul"
+groupmatchstr8="Aug"
+groupmatchstr9="Sep"
+strjoin strvar " and " 6
+messagebox strvar "strvar"   ; 'Jan and Feb and Mar and Apr and May and Jun'
 
-groupmatchstr1="Jan" 
-groupmatchstr2="Feb" 
-groupmatchstr3="Mar" 
-groupmatchstr4="Apr" 
-groupmatchstr5="May" 
-groupmatchstr6="Jun" 
+groupmatchstr1="Jan"
+groupmatchstr2="Feb"
+groupmatchstr3="Mar"
+groupmatchstr4="Apr"
+groupmatchstr5="May"
+groupmatchstr6="Jun"
+groupmatchstr7=""
+groupmatchstr8=""
+groupmatchstr9=""
 strjoin strvar "," 9
 messagebox strvar "strvar"   ; 'Jan,Feb,Mar,Apr,May,Jun,,,'
 </pre>

Modified: trunk/doc/ja/html/macro/command/strjoin.html
===================================================================
--- trunk/doc/ja/html/macro/command/strjoin.html	2010-08-20 15:14:09 UTC (rev 4025)
+++ trunk/doc/ja/html/macro/command/strjoin.html	2010-08-20 15:32:52 UTC (rev 4026)
@@ -30,12 +30,11 @@
 </p>
 
 <p>
-&lt;separator&gt; ‚É‚Í‹æØ‚è‹L†‚Æ‚µ‚Ĉµ‚¤•¶Žš‚ð1•¶Žš‚¾‚¯Žw’è‚·‚éB
+&lt;separator&gt; ‚É‚Í‹æØ‚è‹L†‚Æ‚µ‚Ĉµ‚¤•¶Žš—ñ‚ðŽw’è‚·‚éB
 </p>
 
 <p>
-&lt;count&gt; ‚ɂ́A˜AŒ‹‚·‚é•”•ª•¶Žš—ñ‚̍ő吔i9ˆÈ‰ºj‚ðŽw’è‚·‚éB <br>
-•¶Žš—ñ’†‚Ì•”•ª•¶Žš—ñ‚̐”‚ª &lt;count&gt; ˆÈã‚Å‚ ‚é‚Æ‚«A•”•ª•¶Žš—ñ‚ª‘ã“ü‚³‚ê‚È‚©‚Á‚½groupmatchstr‚ɂ́ANULL‚ª‘ã“ü‚³‚ê‚éB
+&lt;count&gt; ‚ɂ́A˜AŒ‹‚·‚é•”•ª•¶Žš—ñ‚̍ő吔i9ˆÈ‰ºj‚ðŽw’è‚·‚éB
 </p>
 
 <p>
@@ -65,21 +64,27 @@
 <h2>—á</h2>
 
 <pre class="macro-example">
-groupmatchstr1="Jan" 
-groupmatchstr2="Feb" 
-groupmatchstr3="Mar" 
-groupmatchstr4="Apr" 
-groupmatchstr5="May" 
-groupmatchstr6="Jun" 
-strjoin strvar "," 6
-messagebox strvar "strvar"   ; 'Jan,Feb,Mar,Apr,May,Jun'
+groupmatchstr1="Jan"
+groupmatchstr2="Feb"
+groupmatchstr3="Mar"
+groupmatchstr4="Apr"
+groupmatchstr5="May"
+groupmatchstr6="Jun"
+groupmatchstr7="Jul"
+groupmatchstr8="Aug"
+groupmatchstr9="Sep"
+strjoin strvar " and " 6
+messagebox strvar "strvar"   ; 'Jan and Feb and Mar and Apr and May and Jun'
 
-groupmatchstr1="Jan" 
-groupmatchstr2="Feb" 
-groupmatchstr3="Mar" 
-groupmatchstr4="Apr" 
-groupmatchstr5="May" 
-groupmatchstr6="Jun" 
+groupmatchstr1="Jan"
+groupmatchstr2="Feb"
+groupmatchstr3="Mar"
+groupmatchstr4="Apr"
+groupmatchstr5="May"
+groupmatchstr6="Jun"
+groupmatchstr7=""
+groupmatchstr8=""
+groupmatchstr9=""
 strjoin strvar "," 9
 messagebox strvar "strvar"   ; 'Jan,Feb,Mar,Apr,May,Jun,,,'
 </pre>

Modified: trunk/teraterm/ttpmacro/ttl.c
===================================================================
--- trunk/teraterm/ttpmacro/ttl.c	2010-08-20 15:14:09 UTC (rev 4025)
+++ trunk/teraterm/ttpmacro/ttl.c	2010-08-20 15:32:52 UTC (rev 4026)
@@ -3717,7 +3717,7 @@
 	WORD Err, VarId;
 	WORD VarType;
 	int maxvar, sp;
-	int srclen, len;
+	int srclen;
 	int i;
 	char *srcptr, *p;
 
@@ -3744,11 +3744,6 @@
 		RestoreNewLine(delimchars);
 	}
 
-	// ƒfƒŠƒ~ƒ^‚Í1•¶Žš‚Ì‚Ý‚Æ‚·‚éB
-	len = strlen(delimchars);
-	if (len != 1)
-		return ErrSyntax;
-
 	srcptr = StrVarPtr(VarId);
 	srclen = strlen(srcptr);
 
@@ -3760,11 +3755,11 @@
 				return ErrSyntax;
 			p = StrVarPtr(VarId);
 			strncat_s(srcptr, MaxStrLen, p, _TRUNCATE);
-			strncat_s(srcptr, MaxStrLen, delimchars, _TRUNCATE);
+			if (i < maxvar-1) {
+				strncat_s(srcptr, MaxStrLen, delimchars, _TRUNCATE);
+			}
 		}
 	}
-	/* ÅŒã‚̃fƒŠƒ~ƒ^‚ðÁ‚· */
-	srcptr[strlen(srcptr) - 1] = '\0';
 
 	return Err;
 #undef MAXVARNUM



Ttssh2-commit メーリングリストの案内
Back to archive index