I've run into these "ending" problems with the input from Web browser "textarea" form boxes with browsers running on different platforms -- on say Windows, Linux and Macintosh.
In a form textarea box most Windows browsers (esp. MS IE) after an "enter" or "return" produce a lfcr, on Linux just a lf, and on a Mac browser just a cr (since each plaform developers had differing notions of what constitutes a line break).
Below is the rather inelegant code I used then to display the results on the browser screen (which being HTML wants a <br>, and in the file system of the UNIX box the data were being saved to, which whats a '\n' or lf.
$phrases was the return parameter from a browser textarea box which could have one or more lines with endings generated by the "enter" key.
# Account for differences in browser returns
# Replace \r\n, \r, or \n with <br>
$lf = chr(10);
$cr = chr(13);
$phrases =~ s/$lf/<br>/g;
$phrases =~ s/$cr/<br>/g;
# In case you were on Windows and not UNIX nor MAC,
# now have two <br>'s rather than one
$phrases =~ s/<br><br>/<br>/g;
# Show $html_phrases in text box of browser
$html_phrases = $phrases;
# Fix $phrases for storage in UNIX file
$phrases =~ s/<br>/\\n/g;
Must be an easier way, but this got the list in $phrases displayed properly in the browser, and saved with a single "\n" for line endings regardless of which browser it came from.
Live in the moment
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.