Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Chrtran() applied selectively
Message
De
04/06/2016 02:59:46
 
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Divers
Thread ID:
01636985
Message ID:
01636987
Vues:
156
J'aime (3)
>I am searching for the most expedient way to change a character in a specific area of a string.
>
>mstr='1st-title: ANAME-HER : 3520931 place[21-22]'
>in this string the hyphen between 21 and 22 should be a dot.
>if I applied chrtran() I would end up changing all the hyphens which I do not want to do.
>
>right now all I've been able to accomplish is to locate the error in a portion of the string, but putting it back together is starting to get a bit unwieldy.
>Is there a simpler more direct route of directing the chrtran() to the area beyond '['
>
>thanks
>k
Karen,

If you have been able to locate the error portion, use something like
 substr(mstr,1 , pos-1) + '.' + substr(mstr, pos+1)
Also, if
(1) [ followed by two digits are immediately before the hyphen, and
(2) two digits and ] immediately follow the hyphen

Then regular expressions may be of help
*_______________________________________________________________________________
function do_it()
	
	local regexObj
	regexObj = createobject('VBScript.RegExp')
	regexObj.Global = .t.
	regexObj.IgnoreCase = .f.
	regexObj.Pattern = '(\[\d\d)(-)(\d\d\])'
	
	local s, x
	s ='1st-title: ANAME-HER : 3520931 place[21-22]'
	?s
	x = m.regexObj.Replace(m.s, '$1.$3')
	?x
	
endfunc
*_______________________________________________________________________________
Gregory
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform