Re: [WebDNA] GETCHARS ... words?
This WebDNA talk-list message is from 2009
It keeps the original formatting.
numero = 102274
interpreted = N
texte = The most efficient code I've found for this is:[text]shortstring=[middle endbefore= ][getchars start=1&end=1000] [sourcestring][/getchars][/middle][/text]Brian FriesBrainScan SoftwareOn Mar 26, 2009, at 2:04 PM, Toby Cox wrote:> I looked into the different ways of doing this a while back and was > surprised by the results:>> To my mind there are 3 ways of doing it>> 1. The way Steve has described>> 2. Guessing how many words are in 1000 characters and doing a plain > listwords>> 3. Using FindString to pull out the last space from the first 1,000 > characters>>> A while back I did speed tests on this and was surprised by results>> Working on 8,000 characters on our servers option 1 takes 0.02 secs, > option 2 takes 0.35 secs and option 3 takes 0.00>>> Code here>>> [text]mystring=[url]...Insert enormous string here...[/url][/text]> [math show=f]time3=[ELAPSEDTIME][/math]> [if [countchars][mystring][/countchars]>1000]> [then]> [listwords delimiters= &words=[unurl][getchars start=1&end=1000] > [mystring][/getchars][/unurl]][text]word[math][index]+1[/math]=[word] > [/text][text]word[index][/text] [/listwords]...> [/then]> [else]> [mystring]> [/else]> [/if]
> [math show=f]time4=[ELAPSEDTIME][/math]** Countchars with listwords > took [format .2f][math]([time4]-[time3])/60[/math][/format] seconds **>
> [math show=f]time1=[ELAPSEDTIME][/math]> [listwords words=[mystring]][showif [index]<100][word] [/showif][/ > listwords]>
> [math show=f]time2=[ELAPSEDTIME][/math]** Guessing how many > characters are in 1,000 chars took [format .2f][math]([time2]- > [time1])/60[/math][/format] seconds **>
>> [math show=f]time1=[ELAPSEDTIME][/math]> [text]foundatstring=[getchars start=980&end=1000][mystring][/ > getchars][/text]> [text]foundat=[findstring Source=[foundatstring]&Find= > %20&StartAt=1&reverse=T][/text]> [unurl][getchars start=1&end=[math]1000-[foundat]-2[/math]][mystring] > [/getchars][/unurl]
>
> [math show=f]time2=[ELAPSEDTIME][/math]** Using FindString to find a > space in text takes [format .2f][math]([time2]-[time1])/60[/math][/ > format] seconds **>>
>>> On 26 Mar 2009, at 20:36, Steve Craig wrote:>>> Hi>>>> I have used this for a while now and it works fine for me.>>>> [if [countchars][myMAINSTORY][/countchars]>1000]>> [then]>> [listwords delimiters= &words=[url][getchars start=1&end=1000] >> [myMAINSTORY][/getchars][/url]][text]word[math][index]+1[/ >> math]=[word][/text][text]word[index][/text] [/listwords]...>> [/then]>> [else]>> [myMAINSTORY]>> [/else]>> [/if]>>>> The listwords line should be all in one if this email wraps. Hope >> this helps.>>>> Cheers>> ========================================>> Steve Craig - Asylum Interactive Ltd>> Tel +44 1330 860550 Fax +44 1330 860880>> ========================================>> http://www.asylumweb.com>> Email: steve@asylumweb.com>> Skype: s.craig - iChat: steve.craig>> ========================================>>>>>>>>>> On 26 Mar 2009, at 19:54, Ki Song wrote:>>>>> Is there a function within WebDNA that allows you to limit the >>> number>>> of characters, but on get complete words?>>> For example, we would like to first 1000 characters from a field.>>> However, if character 1000 is in the middle of a word, it would only>>> return the last full word before the 1000th character.>>>>>> Does that make sense?>>> Is this possible?>>>>>> ----------->>> Ki Song>>> --------------------------------------------------------->>> This message is sent to you because you are subscribed to>>> the mailing list
.>>> To unsubscribe, E-mail to: >>> archives: http://mail.webdna.us/list/talk@webdna.us>>> old archives: http://dev.webdna.us/TalkListArchive/>>>>>> --------------------------------------------------------->> This message is sent to you because you are subscribed to>> the mailing list .>> To unsubscribe, E-mail to: >> archives: http://mail.webdna.us/list/talk@webdna.us>> old archives: http://dev.webdna.us/TalkListArchive/>> ---------------------------------------------------------> This message is sent to you because you are subscribed to> the mailing list .> To unsubscribe, E-mail to: > archives: http://mail.webdna.us/list/talk@webdna.us> old archives: http://dev.webdna.us/TalkListArchive/
Associated Messages, from the most recent to the oldest:
The most efficient code I've found for this is:[text]shortstring=[middle endbefore= ][getchars start=1&end=1000] [sourcestring][/getchars][/middle][/text]Brian FriesBrainScan SoftwareOn Mar 26, 2009, at 2:04 PM, Toby Cox wrote:> I looked into the different ways of doing this a while back and was > surprised by the results:>> To my mind there are 3 ways of doing it>> 1. The way Steve has described>> 2. Guessing how many words are in 1000 characters and doing a plain > listwords>> 3. Using FindString to pull out the last space from the first 1,000 > characters>>> A while back I did speed tests on this and was surprised by results>> Working on 8,000 characters on our servers option 1 takes 0.02 secs, > option 2 takes 0.35 secs and option 3 takes 0.00>>> Code here>>> [text]mystring=[url]...Insert enormous string here...[/url][/text]> [math show=f]time3=[elapsedtime][/math]> [if [countchars][mystring][/countchars]>1000]> [then]> [listwords delimiters= &words=[unurl][getchars start=1&end=1000] > [mystring][/getchars][/unurl]][text]word[math][index]+1[/math]=[word] > [/text][text]word[index][/text] [/listwords]...> [/then]> [else]> [mystring]> [/else]> [/if]
> [math show=f]time4=[elapsedtime][/math]** Countchars with listwords > took [format .2f][math]([time4]-[time3])/60[/math][/format] seconds **>
> [math show=f]time1=[elapsedtime][/math]> [listwords words=[mystring]][showif [index]<100][word] [/showif][/ > listwords]>
> [math show=f]time2=[elapsedtime][/math]** Guessing how many > characters are in 1,000 chars took [format .2f][math]([time2]- > [time1])/60[/math][/format] seconds **>
>> [math show=f]time1=[elapsedtime][/math]> [text]foundatstring=[getchars start=980&end=1000][mystring][/ > getchars][/text]> [text]foundat=[findstring Source=[foundatstring]&Find= > %20&StartAt=1&reverse=T][/text]> [unurl][getchars start=1&end=[math]1000-[foundat]-2[/math]][mystring] > [/getchars][/unurl]
>
> [math show=f]time2=[elapsedtime][/math]** Using FindString to find a > space in text takes [format .2f][math]([time2]-[time1])/60[/math][/ > format] seconds **>>
>>> On 26 Mar 2009, at 20:36, Steve Craig wrote:>>> Hi>>>> I have used this for a while now and it works fine for me.>>>> [if [countchars][myMAINSTORY][/countchars]>1000]>> [then]>> [listwords delimiters= &words=[url][getchars start=1&end=1000] >> [myMAINSTORY][/getchars][/url]][text]word[math][index]+1[/ >> math]=[word][/text][text]word[index][/text] [/listwords]...>> [/then]>> [else]>> [myMAINSTORY]>> [/else]>> [/if]>>>> The listwords line should be all in one if this email wraps. Hope >> this helps.>>>> Cheers>> ========================================>> Steve Craig - Asylum Interactive Ltd>> Tel +44 1330 860550 Fax +44 1330 860880>> ========================================>> http://www.asylumweb.com>> Email: steve@asylumweb.com>> Skype: s.craig - iChat: steve.craig>> ========================================>>>>>>>>>> On 26 Mar 2009, at 19:54, Ki Song wrote:>>>>> Is there a function within WebDNA that allows you to limit the >>> number>>> of characters, but on get complete words?>>> For example, we would like to first 1000 characters from a field.>>> However, if character 1000 is in the middle of a word, it would only>>> return the last full word before the 1000th character.>>>>>> Does that make sense?>>> Is this possible?>>>>>> ----------->>> Ki Song>>> --------------------------------------------------------->>> This message is sent to you because you are subscribed to>>> the mailing list .>>> To unsubscribe, E-mail to: >>> archives: http://mail.webdna.us/list/talk@webdna.us>>> old archives: http://dev.webdna.us/TalkListArchive/>>>>>> --------------------------------------------------------->> This message is sent to you because you are subscribed to>> the mailing list .>> To unsubscribe, E-mail to: >> archives: http://mail.webdna.us/list/talk@webdna.us>> old archives: http://dev.webdna.us/TalkListArchive/>> ---------------------------------------------------------> This message is sent to you because you are subscribed to> the mailing list .> To unsubscribe, E-mail to: > archives: http://mail.webdna.us/list/talk@webdna.us> old archives: http://dev.webdna.us/TalkListArchive/
Brian Fries
DOWNLOAD WEBDNA NOW!
Top Articles:
Talk List
The WebDNA community talk-list is the best place to get some help: several hundred extremely proficient programmers with an excellent knowledge of WebDNA and an excellent spirit will deliver all the tips and tricks you can imagine...
Related Readings:
Software & Sites (1998)
Date Formats (1997)
WebCat2 - [format thousands] (1997)
[WebDNA] upgrading to 8.1 or 8.2? (2016)
Handy Browser Counter Tip (1997)
webcat license???? (1997)
random in arizona (2003)
WebCatalog v2.1.1 (1998)
[OT] (waaaay OT) (2004)
WebCatalog for Postcards ? (1997)
WebCat2b13 Command Reference Doc error (1997)
Online magazine- monthly updates and such (1999)
BBEdit and WebCatalog 2.0? (1997)
shownext problems (1998)
did I miss anything (1997)
Further tests with the infamous shipCost (1997)
Re:multiple digests, please stop (1997)
[cart] tag (2000)
Plugin or CGI or both (1997)
format rounding?! (2001)