• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Pawn] Skipping extra spaces
#11
(2019-04-15, 09:01 PM)SimoSbara Wrote: I optimized a bit this code:
Code:
for(new i = strlen(text); i >= 0; --i)
{
?if(text[i] == ' ') ?
? ?if(text[i-1] == ' ' || i == 0)
? ? ? ? ? ?strdel(text, i-1, i);
}

The syntax is correct, I?deleted the "spaces" variable because you could check the extra space by comparing the character before the text[i]. Let me know if it works the same.

EDIT: I also removed the switch case just to make the code cleaner.
EDIT 1: Optimized again a case scenario.

Final code:
Code:
for(new i = strlen(text); i >= 0; --i)
{
?if(text[i] == ' ')
?{
? ?if(text[i-1] == ' ')
? ? ?strdel(text, i-1, i);

? ?else if(i == 0)
? ? ?strdel(text, 0, 1);
?}
}

What about space at end of sentence?? You deleted at 0 pos and need to delete at strlen pos too

PHP Code:
for(new strlen(text); >= 0; --i)
{? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
?if(
text[i] == ' ')
?{
? ?if(
text[i-1] == ' ')
? ? ?
strdel(texti-1i);

? ?else if(
== 0)
? ? ?
strdel(text01);

? ?else if(
== strlen(text)-1)
? ? ?
strdel(textstrlen(text)-1strlen(text);
?}


I think that's will be faster(especially with long sentences):

PHP Code:
for(new strlen(text); >= 0; --i)
{
? ? if(
text[i] == ' ')
? ??{
? ? ? ? if(
text[i-1] == ' ')
? ? ?       
strdel(texti-1i);
? ? }
}
if(
text[0] ==?'?')
    
strdel(text01);
if(
text[strlen(text)-1] == ' ')
    
strdel(textstrlen(text)-1strlen(text)); 
[Image: aWbv5wm.gif]

  Reply


Messages In This Thread
Skipping extra spaces - by Mark2 - 2019-04-15, 11:40 AM
RE: Skipping extra spaces - by SimoSbara - 2019-04-15, 09:01 PM
RE: Skipping extra spaces - by Mark2 - 2019-04-16, 09:21 AM
RE: Skipping extra spaces - by Bork - 2019-04-15, 09:20 PM
RE: Skipping extra spaces - by SimoSbara - 2019-04-15, 09:23 PM
RE: Skipping extra spaces - by Y_Less - 2019-04-15, 10:39 PM
RE: Skipping extra spaces - by SimoSbara - 2019-04-15, 11:48 PM
RE: Skipping extra spaces - by Y_Less - 2019-04-16, 12:33 AM
RE: Skipping extra spaces - by SimoSbara - 2019-04-16, 05:52 AM
RE: Skipping extra spaces - by mr_sacrimoni - 2019-04-16, 08:06 AM
RE: Skipping extra spaces - by SimoSbara - 2019-04-16, 08:51 AM
RE: Skipping extra spaces - by SimoSbara - 2019-04-16, 10:50 AM
RE: Skipping extra spaces - by Y_Less - 2019-04-16, 11:21 AM
RE: Skipping extra spaces - by Mark2 - 2019-04-16, 01:12 PM
RE: Skipping extra spaces - by SimoSbara - 2019-04-16, 01:39 PM
RE: Skipping extra spaces - by Y_Less - 2019-04-16, 02:03 PM
RE: Skipping extra spaces - by WestCoast - 2019-04-16, 03:01 PM
RE: Skipping extra spaces - by Y_Less - 2019-04-16, 03:08 PM
RE: Skipping extra spaces - by WestCoast - 2019-04-16, 03:45 PM
RE: Skipping extra spaces - by SimoSbara - 2019-04-16, 05:49 PM
RE: Skipping extra spaces - by SyS - 2019-04-17, 03:18 AM
RE: Skipping extra spaces - by Y_Less - 2019-04-17, 02:22 PM
RE: Skipping extra spaces - by SyS - 2019-04-17, 03:06 PM
RE: Skipping extra spaces - by Y_Less - 2019-04-17, 03:29 PM

Forum Jump: