The (input) string should be considered as one group (of chars). Quoting is needed if the first or the last (or both) is not a quote, all inside quotes should be doubled if they are not.
R.E. Boss > -----Oorspronkelijk bericht----- > Van: programming-boun...@jsoftware.com [mailto:programming- > boun...@jsoftware.com] Namens Don Guinn > Verzonden: zondag 12 februari 2012 14:03 > Aan: Programming forum > Onderwerp: Re: [Jprogramming] quote problem > > Given the string contains several groups of non-blanks, would each group > need to be surrounded with quotes and quotes within it doubled if not a > number, or only if it contained one or more quotes? Or should the string be > considered as one group? Again, when would quoting be needed? > > On Sun, Feb 12, 2012 at 1:17 AM, R.E. Boss <r.e.b...@planet.nl> wrote: > > > The problem boils down to the fact that J requires a string (of chars) to > > be > > enclosed in (single) quotes and the inside quotes have to be doubled. > > (Contrary to a spreadsheet (e.g.) where a cell is of type char if it is not > > a number.) > > But what if I don't want bother a user with these requirements, she enters > > a > > string and my verb does the enclosing and doubling, if necessary? > > > > > > R.E. Boss > > > > > > > -----Oorspronkelijk bericht----- > > > Van: programming-boun...@jsoftware.com [mailto:programming- > > > boun...@jsoftware.com] Namens Dan Bron > > > Verzonden: zaterdag 11 februari 2012 20:35 > > > Aan: J Programming > > > Onderwerp: Re: [Jprogramming] quote problem > > > > > > Oh, just saw Henry's response and he interpreted your question > > differently. > > > > > > If you're not typing these strings in, then what is the source? And what > > is > > > processing them (is it ;: ? if it's ". there's more to worry about than > > proper > > > quoting). > > > > > > Anyway, if the strings are coming from e.g. a file and the trouble is > > with > > > parsing them using ;: (instead of evaluating them in the immex session), > > then > > > you could try something along the lines of (#~ 2 * '''' = ]) y (i.e. > > double > > > singleton quotes). > > > > > > -Dan > > > > > > Please excuse typos; composed on a handheld device. > > > > > > -----Original Message----- > > > From: Dan Bron <j...@bron.us> > > > Sender: programming-boun...@jsoftware.com > > > Date: Sat, 11 Feb 2012 14:05:16 > > > To: Programming forum<programming@jsoftware.com> > > > Reply-To: Programming forum <programming@jsoftware.com> > > > Subject: Re: [Jprogramming] quote problem > > > > > > Unlike C, where \ introduces an escape sequence within string liberals, > > in > > J, > > > the only special character in a literal is ' (single quote). > > > > > > So, to embed quotes in strings, double them up: a. i. '(`''3' . Of > > course, > > > recursively embedded quotes need quadrupling, octupling, etc (eg 'he > said > > > ''she said ''''yes'''', but she lied'', if you can believe that'). > > > > > > The syntax error in your first example is due to the juxtaposition of two > > > nouns, the string '(`' and the number 3 . > > > > > > -Dan > > > > > > > > > On Feb 11, 2012, at 1:04 PM, "R.E. Boss" <r.e.b...@planet.nl> wrote: > > > > > > > If I want to process an arbitrary string, I may encounter a string > > which > > > > might give a "syntax error" or an "open quote" message. > > > > > > > > How can I detect such a situation and how can I repair the given > > string? > > > > > > > > > > > > > > > > a. i. '(`'3 > > > > > > > > |syntax error > > > > > > > > | a. i.'(`'3 > > > > > > > > > > > > > > > > a. i. '(`'3' > > > > > > > > |open quote > > > > > > > > | a.i.'(`'3' > > > > > > > > | ^ > > > > > > > > > > > > > > > > > > > > > > > > R.E. Boss > > > > > > > > ---------------------------------------------------------------------- > > > > For information about J forums see > > > http://www.jsoftware.com/forums.htm > > > ---------------------------------------------------------------------- > > > For information about J forums see > http://www.jsoftware.com/forums.htm > > > ---------------------------------------------------------------------- > > > For information about J forums see > http://www.jsoftware.com/forums.htm > > > > ---------------------------------------------------------------------- > > For information about J forums see > http://www.jsoftware.com/forums.htm > > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm