Replace in XML need help
-
@Infinite said in Replace in XML need help:
hi i try
<ride_data_name>star.star</ride_data_name>\R<activation_count>1(?=<)
replace with
${0}000 and regular expression but not work
<ride_data_name>have much other names</ride_data_name>NOPE. That’s not going to be sufficient.
Read and follow the link where I posted earlier:If not you need to learn how to ask your question better, reference and follow instructions HERE when you post again.
-
@Alan-Kilborn said in Replace in XML need help:
@Infinite said in Replace in XML need help:
hi i try
<ride_data_name>star.star</ride_data_name>\R<activation_count>1(?=<)
replace with
${0}000 and regular expression but not work
<ride_data_name>have much other names</ride_data_name>NOPE. That’s not going to be sufficient.
Read and follow the link where I posted earlier:If not you need to learn how to ask your question better, reference and follow instructions HERE when you post again.
i cant find info about it what i want try here a full example
<name>ride_cloud_001</name>
<desc>STR_RIDE_CLOUD_002</desc>
<item_type>normal</item_type>
<price>5</price>
<activation_mode>Both</activation_mode>
<activation_count>1</activation_count> this need change from 1 to 1000
<breakdown>1</breakdown>
<activate_target>standalone</activate_target>
<use_delay>0</use_delay>
<max_stack_count>1</max_stack_count>
<equipment_slots>none</equipment_slots>
<quality>epic</quality>
<level>1</level>
<lore>FALSE</lore>
<can_exchange>FALSE</can_exchange>
<can_sell_to_npc>TRUE</can_sell_to_npc>
<can_vendor>FALSE</can_vendor>
<can_deposit_to_character_warehouse>TRUE</can_deposit_to_character_warehouse>
<can_deposit_to_account_warehouse>FALSE</can_deposit_to_account_warehouse>
<can_deposit_to_guild_warehouse>FALSE</can_deposit_to_guild_warehouse>
<breakable>FALSE</breakable>
<soul_bind>FALSE</soul_bind>
<remove_when_logout>FALSE</remove_when_logout>
<can_exchange_only_guildmember>FALSE</can_exchange_only_guildmember>
<gender_permitted>all</gender_permitted>
<warrior>30</warrior>
<scout>30</scout>
<mage>30</mage>
<cleric>30</cleric>
<engineer>30</engineer>
<artist>30</artist>
<fighter>30</fighter>
<knight>30</knight>
<assassin>30</assassin>
<ranger>30</ranger>
<wizard>30</wizard>
<elementalist>30</elementalist>
<chanter>30</chanter>
<priest>30</priest>
<gunner>30</gunner>
<bard>30</bard>
<rider>30</rider>
<painter>30</painter>
<bonus_apply>inventory</bonus_apply>
<casting_delay>3000</casting_delay>
<can_split>FALSE</can_split>
<confirm_to_delete_cash_item>FALSE</confirm_to_delete_cash_item>
<item_drop_permitted>FALSE</item_drop_permitted>
<ride_data_name>Cloud_001</ride_data_name> This is one name of much other ones and need not touchOnly this need replace what contains <ride_data_name> tag
and <activation_count>1</activation_count>to <activation_count>1000</activation_count>
-
You at least understood that “More data will make it easier to understand your question”. However, you still didn’t follow the advice from the instructions HERE, which would have you put the “BEFORE” and “AFTER” text into text boxes , using the
</>
button on the toolbar,… or using the markdown
```
when typing your code, as shown HEREUntil you do that, no one can be sure that the data that we see is actually the data you are desiring for us to see. Because of that, Alan is not likely to spend more time trying to help you, until you are willing to put in the effort to show the data in a way that will allow making a reasonable search/replace expression. So, if you want any more help, you are going to have to try to be more clear with your data, and give a better understanding of what you are trying to accomplish.
-
@PeterJones said in Replace in XML need help:
You at least understood that “More data will make it easier to understand your question”. However, you still didn’t follow the advice from the instructions HERE, which would have you put the “BEFORE” and “AFTER” text into text boxes , using the
</>
button on the toolbar,… or using the markdown
```
when typing your code, as shown HEREUntil you do that, no one can be sure that the data that we see is actually the data you are desiring for us to see. Because of that, Alan is not likely to spend more time trying to help you, until you are willing to put in the effort to show the data in a way that will allow making a reasonable search/replace expression. So, if you want any more help, you are going to have to try to be more clear with your data, and give a better understanding of what you are trying to accomplish.
<name>ride_cloud_001</name> <desc>STR_RIDE_CLOUD_002</desc> <item_type>normal</item_type> <price>5</price> <activation_mode>Both</activation_mode> <activation_count>1</activation_count> <breakdown>1</breakdown> <activate_target>standalone</activate_target> <use_delay>0</use_delay> <max_stack_count>1</max_stack_count> <equipment_slots>none</equipment_slots> <quality>epic</quality> <level>1</level> <lore>FALSE</lore> <can_exchange>FALSE</can_exchange> <can_sell_to_npc>TRUE</can_sell_to_npc> <can_vendor>FALSE</can_vendor> <can_deposit_to_character_warehouse>TRUE</can_deposit_to_character_warehouse> <can_deposit_to_account_warehouse>FALSE</can_deposit_to_account_warehouse> <can_deposit_to_guild_warehouse>FALSE</can_deposit_to_guild_warehouse> <breakable>FALSE</breakable> <soul_bind>FALSE</soul_bind> <remove_when_logout>FALSE</remove_when_logout> <can_exchange_only_guildmember>FALSE</can_exchange_only_guildmember> <gender_permitted>all</gender_permitted> <warrior>30</warrior> <scout>30</scout> <mage>30</mage> <cleric>30</cleric> <engineer>30</engineer> <artist>30</artist> <fighter>30</fighter> <knight>30</knight> <assassin>30</assassin> <ranger>30</ranger> <wizard>30</wizard> <elementalist>30</elementalist> <chanter>30</chanter> <priest>30</priest> <gunner>30</gunner> <bard>30</bard> <rider>30</rider> <painter>30</painter> <bonus_apply>inventory</bonus_apply> <casting_delay>3000</casting_delay> <can_split>FALSE</can_split> <confirm_to_delete_cash_item>FALSE</confirm_to_delete_cash_item> <item_drop_permitted>FALSE</item_drop_permitted> <ride_data_name>Cloud_001</ride_data_name>
find
<activation_count>1</activation_count>
need to
<ride_data_name>**1.8K other names**</ride_data_name> <activation_count>1000</activation_count>
-
Reading over your posts, I am getting confused, because you originally phrased things that made it look like you wanted to change
<activation_count>
if it came immediately after<ride_data_name>Cloud_001</ride_data_name>
. But in your second post, without text boxes, you showed the<activation_count>
coming long before the<ride_data_name>
, and said you didn’t want to change that. And now, you show that you seem to want to turn the single line<activation_count>1</activation_count>
into a pair of lines
<ride_data_name>**1.8K other names**</ride_data_name> <activation_count>1000</activation_count>
where you somehow get the
<ride_data_name>
value from earlier, or somethingYour desires are still completely as clear as mud, and nothing you have said has helped clear it up.
There’s a concept in technology help forums of “SSCCE”, where people asking questions are expected to give short, self-contained, correct/complete (or in programming, “compilable”) examples of what they want. The short is important, because the dozens of lines in your example just obscure the important parts… but the correct/complete is important because your data has to show enough to make it clear what edge cases are needed
BEFORE:
<name>ride_cloud_001</name> <...> <activation_count>1</activation_count> <...> <ride_data_name>Cloud_001</ride_data_name>
AFTER:
<name>ride_cloud_001</name> <...> <activation_count>1000</activation_count> <...> <ride_data_name>Cloud_001</ride_data_name>
But to get a useful response, you would have to show more pairs of BEFORE/AFTER, because with your existing examples, I wouldn’t know what you wanted with
BEFORE:
<name>ride_cloud_002</name> <...> <activation_count>1</activation_count> <...> <ride_data_name>Cloud_002</ride_data_name>
or
BEFORE:
<name>ride_cloud_001</name> <...> <activation_count>2</activation_count> <...> <ride_data_name>Cloud_001</ride_data_name>
or what if you have multiple, like
BEFORE:
<name>ride_cloud_001</name> <...> <activation_count>1</activation_count> <...> <ride_data_name>Cloud_001</ride_data_name> <...> <name>ride_cloud_002</name> <...> <activation_count>1</activation_count> <...> <ride_data_name>Cloud_002</ride_data_name> <...> <name>ride_cloud_003</name> <...> <activation_count>3</activation_count> <...> <ride_data_name>Cloud_003</ride_data_name>
Which of those would you want to change?
-
i dont know why is it flagged as spam when i want change my post lol
so here correct one what we need to change/replace
find
<activation_count>1</activation_count> <ride_data_name>Cloud_001</ride_data_name>
need to
<activation_count>1000</activation_count> <ride_data_name>**1.8K other names**</ride_data_name>
-
@Infinite said in Replace in XML need help:
i dont know why is it flagged as spam when i want change my post lol
so here correct one what we need to change/replace
find
<ride_data_name>Cloud_001</ride_data_name> <activation_count>1</activation_count>
need to
<ride_data_name>**1.8K other names**</ride_data_name> <activation_count>1000</activation_count>
And you have contradicted yourself again. There is no place in the example data box a couple posts ago where a
<ride_data_name>
comes before<activation_count>
– either immediately before or any number of lines before.The fact is, right now, I would be tempted to tell you the solution is to search for
<activation_count>1</activation_count>
and replace with<activation_count>1000</activation_count>
, and be done with it. I know that wouldn’t give you what you want, but the only consistency between your posts is having that1
change to1000
. -
@PeterJones said in Replace in XML need help:
@Infinite said in Replace in XML need help:
i dont know why is it flagged as spam when i want change my post lol
so here correct one what we need to change/replace
find
<ride_data_name>Cloud_001</ride_data_name> <activation_count>1</activation_count>
need to
<ride_data_name>**1.8K other names**</ride_data_name> <activation_count>1000</activation_count>
And you have contradicted yourself again. There is no place in the example data box a couple posts ago where a
<ride_data_name>
comes before<activation_count>
– either immediately before or any number of lines before.The fact is, right now, I would be tempted to tell you the solution is to search for
<activation_count>1</activation_count>
and replace with<activation_count>1000</activation_count>
, and be done with it. I know that wouldn’t give you what you want, but the only consistency between your posts is having that1
change to1000
.no this is not possible we dont want change all
<activation_count>1</activation_count> to <activation_count>1000</activation_count>
only this ones what contain the tag name
<ride_data_name> with 1.8k other names</ride_data_name>
BEFORE:
<name>ride_cloud_001</name> <desc>STR_RIDE_CLOUD_002</desc> <item_type>normal</item_type> <price>5</price> <activation_mode>Both</activation_mode> <activation_count>1</activation_count> <breakdown>1</breakdown> <activate_target>standalone</activate_target> <use_delay>0</use_delay> <max_stack_count>1</max_stack_count> <equipment_slots>none</equipment_slots> <quality>epic</quality> <level>1</level> <lore>FALSE</lore> <can_exchange>FALSE</can_exchange> <can_sell_to_npc>TRUE</can_sell_to_npc> <can_vendor>FALSE</can_vendor> <can_deposit_to_character_warehouse>TRUE</can_deposit_to_character_warehouse> <can_deposit_to_account_warehouse>FALSE</can_deposit_to_account_warehouse> <can_deposit_to_guild_warehouse>FALSE</can_deposit_to_guild_warehouse> <breakable>FALSE</breakable> <soul_bind>FALSE</soul_bind> <remove_when_logout>FALSE</remove_when_logout> <can_exchange_only_guildmember>FALSE</can_exchange_only_guildmember> <gender_permitted>all</gender_permitted> <warrior>30</warrior> <scout>30</scout> <mage>30</mage> <cleric>30</cleric> <engineer>30</engineer> <artist>30</artist> <fighter>30</fighter> <knight>30</knight> <assassin>30</assassin> <ranger>30</ranger> <wizard>30</wizard> <elementalist>30</elementalist> <chanter>30</chanter> <priest>30</priest> <gunner>30</gunner> <bard>30</bard> <rider>30</rider> <painter>30</painter> <bonus_apply>inventory</bonus_apply> <casting_delay>3000</casting_delay> <can_split>FALSE</can_split> <confirm_to_delete_cash_item>FALSE</confirm_to_delete_cash_item> <item_drop_permitted>FALSE</item_drop_permitted> <ride_data_name>Cloud_001</ride_data_name>
AFTER:
<name>ride_cloud_001</name> <desc>STR_RIDE_CLOUD_002</desc> <item_type>normal</item_type> <price>5</price> <activation_mode>Both</activation_mode> <activation_count>1000</activation_count> <breakdown>1</breakdown> <activate_target>standalone</activate_target> <use_delay>0</use_delay> <max_stack_count>1</max_stack_count> <equipment_slots>none</equipment_slots> <quality>epic</quality> <level>1</level> <lore>FALSE</lore> <can_exchange>FALSE</can_exchange> <can_sell_to_npc>TRUE</can_sell_to_npc> <can_vendor>FALSE</can_vendor> <can_deposit_to_character_warehouse>TRUE</can_deposit_to_character_warehouse> <can_deposit_to_account_warehouse>FALSE</can_deposit_to_account_warehouse> <can_deposit_to_guild_warehouse>FALSE</can_deposit_to_guild_warehouse> <breakable>FALSE</breakable> <soul_bind>FALSE</soul_bind> <remove_when_logout>FALSE</remove_when_logout> <can_exchange_only_guildmember>FALSE</can_exchange_only_guildmember> <gender_permitted>all</gender_permitted> <warrior>30</warrior> <scout>30</scout> <mage>30</mage> <cleric>30</cleric> <engineer>30</engineer> <artist>30</artist> <fighter>30</fighter> <knight>30</knight> <assassin>30</assassin> <ranger>30</ranger> <wizard>30</wizard> <elementalist>30</elementalist> <chanter>30</chanter> <priest>30</priest> <gunner>30</gunner> <bard>30</bard> <rider>30</rider> <painter>30</painter> <bonus_apply>inventory</bonus_apply> <casting_delay>3000</casting_delay> <can_split>FALSE</can_split> <confirm_to_delete_cash_item>FALSE</confirm_to_delete_cash_item> <item_drop_permitted>FALSE</item_drop_permitted> <ride_data_name>Cloud_001</ride_data_name>
BEFORE:
<name>ride_pagati_001</name> <desc>STR_RIDE_PAGATI_001</desc> <item_type>normal</item_type> <price>5</price> <extra_currency_item>karon_coin_01</extra_currency_item> <extra_currency_item_count>1435</extra_currency_item_count> <activation_mode>Both</activation_mode> <activation_count>1</activation_count> <breakdown>1</breakdown> <activate_target>standalone</activate_target> <use_delay>0</use_delay> <max_stack_count>1</max_stack_count> <equipment_slots>none</equipment_slots> <quality>epic</quality> <level>60</level> <lore>FALSE</lore> <can_exchange>FALSE</can_exchange> <can_sell_to_npc>TRUE</can_sell_to_npc> <can_vendor>FALSE</can_vendor> <can_deposit_to_character_warehouse>TRUE</can_deposit_to_character_warehouse> <can_deposit_to_account_warehouse>FALSE</can_deposit_to_account_warehouse> <can_deposit_to_guild_warehouse>FALSE</can_deposit_to_guild_warehouse> <breakable>TRUE</breakable> <soul_bind>FALSE</soul_bind> <remove_when_logout>FALSE</remove_when_logout> <can_exchange_only_guildmember>FALSE</can_exchange_only_guildmember> <gender_permitted>all</gender_permitted> <warrior>60</warrior> <scout>60</scout> <mage>60</mage> <cleric>60</cleric> <engineer>60</engineer> <artist>60</artist> <fighter>60</fighter> <knight>60</knight> <assassin>60</assassin> <ranger>60</ranger> <wizard>60</wizard> <elementalist>60</elementalist> <chanter>60</chanter> <priest>60</priest> <gunner>60</gunner> <bard>60</bard> <rider>60</rider> <painter>60</painter> <bonus_apply>inventory</bonus_apply> <casting_delay>3000</casting_delay> <can_split>FALSE</can_split> <confirm_to_delete_cash_item>TRUE</confirm_to_delete_cash_item> <item_drop_permitted>FALSE</item_drop_permitted> <ride_data_name>pagati_001</ride_data_name>
AFTER:
<name>ride_pagati_001</name> <desc>STR_RIDE_PAGATI_001</desc> <item_type>normal</item_type> <price>5</price> <extra_currency_item>karon_coin_01</extra_currency_item> <extra_currency_item_count>1435</extra_currency_item_count> <activation_mode>Both</activation_mode> <activation_count>1000</activation_count> <breakdown>1</breakdown> <activate_target>standalone</activate_target> <use_delay>0</use_delay> <max_stack_count>1</max_stack_count> <equipment_slots>none</equipment_slots> <quality>epic</quality> <level>60</level> <lore>FALSE</lore> <can_exchange>FALSE</can_exchange> <can_sell_to_npc>TRUE</can_sell_to_npc> <can_vendor>FALSE</can_vendor> <can_deposit_to_character_warehouse>TRUE</can_deposit_to_character_warehouse> <can_deposit_to_account_warehouse>FALSE</can_deposit_to_account_warehouse> <can_deposit_to_guild_warehouse>FALSE</can_deposit_to_guild_warehouse> <breakable>TRUE</breakable> <soul_bind>FALSE</soul_bind> <remove_when_logout>FALSE</remove_when_logout> <can_exchange_only_guildmember>FALSE</can_exchange_only_guildmember> <gender_permitted>all</gender_permitted> <warrior>60</warrior> <scout>60</scout> <mage>60</mage> <cleric>60</cleric> <engineer>60</engineer> <artist>60</artist> <fighter>60</fighter> <knight>60</knight> <assassin>60</assassin> <ranger>60</ranger> <wizard>60</wizard> <elementalist>60</elementalist> <chanter>60</chanter> <priest>60</priest> <gunner>60</gunner> <bard>60</bard> <rider>60</rider> <painter>60</painter> <bonus_apply>inventory</bonus_apply> <casting_delay>3000</casting_delay> <can_split>FALSE</can_split> <confirm_to_delete_cash_item>TRUE</confirm_to_delete_cash_item> <item_drop_permitted>FALSE</item_drop_permitted> <ride_data_name>pagati_001</ride_data_name>
-
no this is not possible we dont want change all
…Of course not. I fully admitted that. But you have never made it clear how we decide which ones should and shouldn’t. So I, in frustration, told you what I was tempted to say.
only this ones what contain the tag name
…You keep on trying to say things like this. But as phrased, it is meaningless. In XML terms, none of the
<activation_count>
tags contain<ride_data_name>
tags – so “contain” means something different to you than to an XML user. I think you don’t understand XML, and you are really just hacking a game configuration file, and some other hacker of that game in some other forum told you to use Notepad++ to make some change in a file you don’t understand, and then dumped you on us to try to help you come up with the regular expression. Yay.I am now to the point that I think you have multiple files. Each file has some random list of xml tags. You only want to change the
<activation_count>1</activation_count>
in a given file if that file also contains a<ride_data_name>
tag someplace below, regardless of the value of that name.I will say that your search needs to be
<activation_count>1</activation_count>(?=(?s:.*<ride_data_name))
and your replacement needs to be<activation_count>1000</activation_count>
For me, that changed a file containing
<name>ride_cloud_001</name> <activation_count>1</activation_count> <bard>30</bard> <ride_data_name>Cloud_001</ride_data_name>
into
<name>ride_cloud_001</name> <activation_count>1000</activation_count> <bard>30</bard> <ride_data_name>Cloud_001</ride_data_name>
but the file
<name>ride_cloud_1800</name> <activation_count>1</activation_count> <bard>30</bard>
did not change, because it does not contain any
<ride_data_name>
.Honestly, if that doesn’t work for you, then I have concluded that you and I cannot communicate successfully, and it is not worth either of our time for me to continue to reply to you. If this doesn’t work, I hope you figure out how to clarify things, so that it makes it easier in case any other Notepad++ reading here decides that they want to try to help you. Good luck.
-
@PeterJones said in Replace in XML need help:
no this is not possible we dont want change all
…Of course not. I fully admitted that. But you have never made it clear how we decide which ones should and shouldn’t. So I, in frustration, told you what I was tempted to say.
only this ones what contain the tag name
…You keep on trying to say things like this. But as phrased, it is meaningless. In XML terms, none of the
<activation_count>
tags contain<ride_data_name>
tags – so “contain” means something different to you than to an XML user. I think you don’t understand XML, and you are really just hacking a game configuration file, and some other hacker of that game in some other forum told you to use Notepad++ to make some change in a file you don’t understand, and then dumped you on us to try to help you come up with the regular expression. Yay.I am now to the point that I think you have multiple files. Each file has some random list of xml tags. You only want to change the
<activation_count>1</activation_count>
in a given file if that file also contains a<ride_data_name>
tag someplace below, regardless of the value of that name.I will say that your search needs to be
<activation_count>1</activation_count>(?=(?s:.*<ride_data_name))
and your replacement needs to be<activation_count>1000</activation_count>
For me, that changed a file containing
<name>ride_cloud_001</name> <activation_count>1</activation_count> <bard>30</bard> <ride_data_name>Cloud_001</ride_data_name>
into
<name>ride_cloud_001</name> <activation_count>1000</activation_count> <bard>30</bard> <ride_data_name>Cloud_001</ride_data_name>
but the file
<name>ride_cloud_1800</name> <activation_count>1</activation_count> <bard>30</bard>
did not change, because it does not contain any
<ride_data_name>
.Honestly, if that doesn’t work for you, then I have concluded that you and I cannot communicate successfully, and it is not worth either of our time for me to continue to reply to you. If this doesn’t work, I hope you figure out how to clarify things, so that it makes it easier in case any other Notepad++ reading here decides that they want to try to help you. Good luck.
thank you something load but now 10min is is normal? XD
XML file is 220MB
into this file are 819 entrys with<ride_data_name>
i try with Regular expression and .matches newline
-
thank you something load but now 10min is is normal? XD
I have no idea what you were trying to say with “something load”. Well, since it started with “thank you”, I will say, “You’re welcome”, I guess… though I’m not sure I actually helped you.
now 10min is is normal? XD
XML file is 220MBYes, if the file is that big , then the lookahead in my expression will really slow things down.
into this file are 819 entrys with
<ride_data_name>
None of your examples in the last 7 hours have ever given an example with more than one
<ride_data_name>
in the same file. I even prompted you with example BEFORE text that had multiple entries in one file, and you didn’t explain how I should process that. You haven’t ever defined what an “entry” is, in your mind. And yet you expect us to somehow come up with an expression for you. I cannot waste my time and yours making any more guesses.Based on the information you seem willing to supply, I am not able to help you any more. I am sorry.
Maybe someone else will be able to help you. Good luck.
-
@PeterJones said in Replace in XML need help:
thank you something load but now 10min is is normal? XD
I have no idea what you were trying to say. Well, since it started with “thank you”, I will say, “You’re welcome”, I guess… though I’m not sure I actually helped you.
now 10min is is normal? XD
XML file is 220MBYes, if the file is that big , then the lookahead in my expression will really slow things down.
into this file are 819 entrys with
<ride_data_name>
None of your examples in the last 7 hours have ever given an example with more than one
<ride_data_name>
in the same file. I even prompted you with example BEFORE text that had multiple entries in one file, and you didn’t explain how I should process that. You haven’t ever defined what an “entry” is, in your mind. And yet you expect us to somehow come up with an expression for you. I cannot waste my time and yours making any more guesses.Based on the information you seem willing to supply, I am not able to help you any more. I am sorry.
Maybe someone else will be able to help you. Good luck.
no all fine man^^ i just dont know it that its need so long to replace 819 entrys and i have try 5 of that with ride date and one without and try your code and it has worked very well so i wait now until its done hehe
And thank you very very much im sure this will work but need time! -
so its not work he has replace all
<activation_count>1</activation_count>
not only 819 with
<ride_data_name>
-
To repeat myself:
None of your examples in the last 7 hours have ever given an example with more than one <ride_data_name> in the same file. I even prompted you with example BEFORE text that had multiple entries in one file, and you didn’t explain how I should process that. You haven’t ever defined what an “entry” is, in your mind. And yet you expect us to somehow come up with an expression for you. I cannot waste my time and yours making any more guesses.
Based on the information you seem willing to supply, I am not able to help you any more. I am sorry.