Quick way to format this?

J

Jgrant

I have a document that is around 50,000 lines long, and I want to turn
it into an organized thing people can read. This is the format it is in
at the moment:
Code:
--------------------

over.push([true,'Floating Devil', ,shop[8],0,mi[21],option[1],false]);
over.push([true,'Floating Angel', ,shop[8],0,mi[20],option[1],false]);
over.push([true,'Floating Devil 2', ,shop[8],0, mi[21],option[1],false]);
over.push([true,'Floating Angel 2', ,shop[8],0, mi[20],option[1],false]);
over.push([true,'Notes', ,shop[2],450,mi[0],option[0], true]);
over.push([true,'Heartsurroundings', ,shop[8],0,mi[13],option[1], true]);
over.push([true,'Valentine Bubble', ,shop[8],0,mi[13],option[1], true]);
over.push([true,'Flying Bats', ,shop[8],0,mi[3],option[1], true]);
over.push([true,'Fire Phoenix Flames', ,shop[2],450,mi[0],option[0], true]);
over.push([true,'Water Phoenix Flames', ,shop[2],450,mi[0],option[0], true]);
over.push([true,'Wind Leaves', ,shop[2],450,mi[0],option[0], true]);
over.push([true,'Snowflakes', ,shop[2],450,mi[0],option[0], true]);
over.push([true,'Night Stars', ,shop[0],700,mi[0],option[0], true]);

--------------------

I want any lines that don't have mi[0] in them erased, and I want the
ones that do contain mi[0] changed into this sort of format:
Notes - shop[2] - 450
Wind Leaves - shop[2] - 450
Snowflakes - shop[2] - 450
Night Stars - shop[0] - 700

Would there be any faster way of doing this (Using find and replace? I
can't figure out how to do it right, with wildcards and all,) than
doing it manually?

I have tried, but everytime I try to use wildcards I mess it up. Any
step-by-steps?


The work is for a website I am working on. I wont say the specifics,
but I made a spider that collected the data, but it could only churn it
out in the first format. I need to make it into the second so my viewers
would be capable of reading it.
 
D

Doug Robbins

Use a macro containing the following code:

Dim i As Long
With ActiveDocument
For i = .Paragraphs.Count To 1 Step -1
If InStr(.Paragraphs(i).Range.Text, "mi[0]") = 0 Then
.Paragraphs(i).Range.Delete
Else
With .Paragraphs(i).Range
.Text = Mid(.Text, InStr(.Text, "true") + 6)
.Text = Left(.Text, InStr(.Text, ",mi[0]") - 1) & vbCr
.Text = Replace(.Text, "', ,", " - ")
.Text = Replace(.Text, ",", " - ")
End With
End If
Next i
End With

--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP, originally posted via msnews.microsoft.com
 
J

Jgrant

Sorry for the absense. Life caught up with me for a bit.

Thank you so much for the macro. I have another question:

Would you happen to know a way that I could get it to take all th
lines that contain shop[1], and group all them together. Then I ca
repeat that for shop[2], shop[3], etc, and have them all grouped tha
way?

I've been doing it manually, and it's a pain.
Use a macro containing the following code:

Dim i As Long
With ActiveDocument
For i = .Paragraphs.Count To 1 Step -1
If InStr(.Paragraphs(i).Range.Text, "mi[0]") = 0 Then
.Paragraphs(i).Range.Delete
Else
With .Paragraphs(i).Range
.Text = Mid(.Text, InStr(.Text, "true") + 6)
.Text = Left(.Text, InStr(.Text, ",mi[0]") - 1) & vbCr
.Text = Replace(.Text, "', ,", " - ")
.Text = Replace(.Text, ",", " - ")
End With
End If
Next i
End With

--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP, originally posted via msnews.microsoft.com

"Jgrant" (e-mail address removed) wrote in message

I have a document that is around 50,000 lines long, and I want t
turn
it into an organized thing people can read. This is the format it i
in
at the moment:
Code:
--------------------

over.push([true,'Floating Devil'
,shop[8],0,mi[21],option[1],false]);
over.push([true,'Floating Angel'
,shop[8],0,mi[20],option[1],false]);
over.push([true,'Floating Devil 2', ,shop[8],0
mi[21],option[1],false]);
over.push([true,'Floating Angel 2', ,shop[8],0
mi[20],option[1],false]);
over.push([true,'Notes', ,shop[2],450,mi[0],option[0], true]);
over.push([true,'Heartsurroundings', ,shop[8],0,mi[13],option[1]
true]);
over.push([true,'Valentine Bubble', ,shop[8],0,mi[13],option[1]
true]);
over.push([true,'Flying Bats', ,shop[8],0,mi[3],option[1], true]);
over.push([true,'Fire Phoenix Flames', ,shop[2],450,mi[0],option[0]

true]);
over.push([true,'Water Phoenix Flames', ,shop[2],450,mi[0],option[0]

true]);
over.push([true,'Wind Leaves', ,shop[2],450,mi[0],option[0], true]);
over.push([true,'Snowflakes', ,shop[2],450,mi[0],option[0], true]);
over.push([true,'Night Stars', ,shop[0],700,mi[0],option[0], true]);

--------------------

I want any lines that don't have mi[0] in them erased, and I want the
ones that do contain mi[0] changed into this sort of format:
Notes - shop[2] - 450
Wind Leaves - shop[2] - 450
Snowflakes - shop[2] - 450
Night Stars - shop[0] - 700

Would there be any faster way of doing this (Using find and replace
I
can't figure out how to do it right, with wildcards and all,) than
doing it manually?

I have tried, but everytime I try to use wildcards I mess it up. Any
step-by-steps?


The work is for a website I am working on. I wont say the specifics,
but I made a spider that collected the data, but it could only chur
it
out in the first format. I need to make it into the second so m
viewers
would be capable of reading it.
 
P

Pamelia Caswell via OfficeKB.com

This works in W2007:

Select the whole list. Click sort > Options. Select the "Other" radio button
and enter a hyphen in the box.
Back in the Sort Text dialog, set the sort by to "Field 2"and click OK.

If that won't work with your version , this longer method should:Temporarily
replace the hyphens with tabs (^t). Convert the tabbed list to a three-
column table. Sort the table on the second column. Then convert the table
back to a tabbed list and replace the tabs with hyphens.

Pam
Sorry for the absense. Life caught up with me for a bit.

Thank you so much for the macro. I have another question:

Would you happen to know a way that I could get it to take all th
lines that contain shop[1], and group all them together. Then I ca
repeat that for shop[2], shop[3], etc, and have them all grouped tha
way?

I've been doing it manually, and it's a pain.
Use a macro containing the following code:
[quoted text clipped - 69 lines]
viewers
would be capable of reading it.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top