GREP search / replacement issue

Hi all

I'm new to GREP searches, but I had a lot of success in my current document (CS3). I'm running a problem now, however. I am trying to replace a manual coding with a paragraph style sheet and the paragraph (in this case italics) already applied character style leaves change when they are applied. For example in this sentence:

"For what purpose, then, of conscience at all when it's in the main superfluous?

changes made to the

"For what purpose, then all conscience at all when he's in the main superfluowe?


When I use my GREP search and replace. For the rest of this paragraph, the paragraph style is applied correctly, it is really strange to local formatting to be switching where it is applied.

I searched the forums and haven't found anything on this issue, any ideas would be greatly appreciated.

Thank you!

I'm sorry to confirm your woes...

It is a "bug" of sorts - you change the length of the text with your GREP, and ID forgotten somehow adjust formatting when text is deleted. I tried a few varieties because it usually works okay-ish, CS3, and CS4. With your sample, I couldn't remove even a single character without "moving" the formatting as well.

Tags: InDesign

Similar Questions

  • GREP: Search and replace

    Does anyone know if its possible to take a list (shown on the lower part of the image) and run a GREP search and replace to create the list of tabs (shown on the picture)?

    I know that the majority of it can be made with the regular search and replace: separate the first and last name; MD and MD #; Postal code and telephone number.

    What I was not able to understand is how to add a tab forward and backward the state abbreviations 2-digit, the Middle Initial, phone number and more important even if there is a way to add tabs in when there aren't the same amount of lines, such as the field of specialty.

    I know that I can use the GREP search and replace to add a tab before each paragraph back, then remove the tab where there are 2 paragraph after each game returns, then substituting a tab and a paragraph back to just a tab, together running all the rows in each set.

    Any help would be greatly appreciated, and if there is anywhere I can learn more about GREP, I would love to learn it.

    Thank you

    Peter

    Doctors List Styles.png

    Peter, try this...

    Find:------.<>

    Replace: \t$0

  • Help with GREP search and replace

    I've never used grep before and I'm stumped.  I have a document that lists the times for different classes.  Times are variously listed as 9-10, 9-10, 9-10 or 9-10, to get examples.  The problem is that there may be no space or a space on the left or the right of the hyphen.  I want it all the time as 10:30 - 11:30, for example.  In other words, the link must have a space on each side of it.  I think that this could be accomplished with GREP search and replace, but I don't understand the syntax well enough to make it work.

    Can someone tell me how to write the search and replace expressions?  (Of course the real time could be any hours).

    Thank you!

    It is tempting to add spaces of * all numbers separated by a dash. If you don't know all time have some minutes, then it is safer to use this:

    (?<=:\d\d)>

    .. Replace with space hyphen space.

    He seeks the "settler, any digit, any digit" (which is * found * not * included *), followed by 'optional of a space, a hyphen, optional space' and must be followed by 'any number' (again, not counting this one). Since the figures before and after are * found * not * included *-which is due to the (? xxx) syntax - all that needs to be replaced is the dashboard itself. Making the space before and after the optional dashboard (using a single "?" immediately after each), no matter if it * is * a space or not, all the combinations will be found and replaced.

  • GREP find/replace + paragraph Styles

    Hello

    I'm editing a long document and have benefited from the assistance of the community already, but being new GREP Style, find/replace, I need to ask for additional help.

    Below a screenshot of the script (original). Two blocks of text you see anticipated by the icons have have styles of different paragraphs. Icons are placed like custom glyphs.

    Now, the last line with C2, 9, 14,... is the target of this post. They are buses of London and I created a paragraph with another icon. The copy that I work with unfortunately is as you see. Buses will follow «;»

    Resulting to place a \r after the semicolon and assign the new paragraph style. The item to work with is (probably) the last "," before the registration of the bus. All entries have it in the same way, where a search/replace global grep should work fine.

    My attempts:

    I used of a previous debate (? < =------;)) [^ ;] + $ to match everything from the end until the last semicolon, but then I found the problem preserving the matched characters and placing \r (using the (? < =-;). start at the beginning and stops at each point comma + space)

    So question: how to stop at the first semicolon at the end and replace the space with \r to create a new paragraph?

    Then, it is two question :-)

    From my previous attempts, I noticed that when you replace the semicolon + space with \r, and change the style of paragraph at a time (from Rail to Bus) caused the Rail paragraph style change (logic) to the style of Bus. So I tried to say the paragraph style of the track "Following paragraph Style is style of Bus" (and not to change the paragraph style in find/replace), but in a way that no longer works.

    Second question is: given to split the find/replace in two steps, how then transform / apply to newly created paragraph the correct style of Bus?

    Thank you in advance for your valuable assistance. So far, the community has been great!

    Antonio

    Original

    Screen Shot 2016-07-12 at 22.32.23.png

    Result for

    Screen Shot 2016-07-12 at 22.54.51.png

    Hi Antonio,.

    If I understand correctly, in 2 regex [1 click play with Multi/find-replace our friend Martinho da Gloria]:

  • Grep search only on the current page, return array "search everything".

    Hello

    Is there a way to grep search only the current page, or any page chosen in my paper (myDocument.pages [i])?

    I can only manage to search for in the document.

    app.findGrepPreferences = app.changeGrepPreferences = null;

    app.findGrepPreferences.findWhat = "Chapter (\d+)";

    myDocument.findGrep)

    Also, is there a way to return the content to find? In this case, I want the $1 this research...

    var a = myDocument.findGrep (). ?

    Thank you

    Christopher

    the error is because you have not initialized the tabular myRet variable.

    Another problem is the use of textframes.everyItem (), because that returns a different object.

    and another is what happens if a textframe is empty you will get an error on the meaning of "object has no text for find/replace.

    Here is the fixed code:

    var myRet=[]
    var myDocument=app.activeDocument;
    var tf = myDocument.pages[0].textFrames.everyItem().getElements(),
    tf1 = myDocument.pages[0].textFrames.count();
    app.findGrepPreferences = app.changeGrepPreferences = null;
    app.findGrepPreferences.findWhat = "Chapter";
    for (var i = 0; i < tf1; i++){
     if (tf[i].characters.length){
    myRet=myRet.concat(tf[i].findGrep());
    }
    }
    alert(myRet)
    
  • How can I make a long list of search - replace only the master

    Hello world

    I had this script:

    //---------------------------------------------------------------------------------------- -------------------------------

    myDocuments var = app.documents.everyItem ();
    var myLayers = myDocuments.layers.everyItem ();

    Locked text on master blocks spreads are not affected.
    If you want to unblock, please add something like this:

    Unlock all elements of each document page on is spreading and Captain spreads (optional):
    myDocuments.pageItems.everyItem (.locked = false);

    var myPageItemsOnNormalSpreads = myDocuments.spreads.everyItem ().pageItems.everyItem ();

    Unlock the layers (optional)
    myLayers.locked = false;

    Lock all elements of page level first on normal spreads
    This leaves the elements on the page on unlocked master spreads:
    myPageItemsOnNormalSpreads.locked = true;

    Now for the GREP part:
    app.findChangeGrepOptions.includeMasterPages = true;
    app.findGrepPreferences = changeGrepPreferences = null;
    app.findGrepPreferences.findWhat = "\\b20\\d+\\b";

    Research on "all open document" level
    Which returns an array of arrays:
    var myTarget = myDocuments.findGrep ();

    Flattening of myTarget Bay:
    var flattenedFoundArray = [];

    for (var n = 0; n < myTarget.length; n ++) {}
    flattenedFoundArray = flattenedFoundArray.concat (myTarget [n]);
    };

    Change the content of the texts found in flat table:
    for (var n = flattenedFoundArray.length - 1; n > = 0; n-) {}
    flattenedFoundArray [n] .silence = String (Number(flattenedFoundArray[n].contents) + 1);
    };

    Unlock all objects on normal spreads:
    myPageItemsOnNormalSpreads.locked = false;

    Reset search GREP and edit the prefs:
    app.findGrepPreferences = changeGrepPreferences = null;

    //---------------------------------------------------------------------------------------- -------------------------------

    made by Uwe

    I change in this, to make a multi elements of search - replace only the master

    //==============================================================================

    myDocuments var = app.documents.everyItem ();
    var myLayers = myDocuments.layers.everyItem ();

    Locked text spreads masters frameworks are not affected.
    If you want to unblock, please add something like this:

    Unlock all items page of each document of spreads and master spreads (optional):
    myDocuments.pageItems.everyItem (.locked = false);

    var myPageItemsOnNormalSpreads = myDocuments.spreads.everyItem ().pageItems.everyItem ();

    Unlock the layers (optional)
    myLayers.locked = false;

    Lock all elements of page level first on normal spreads
    This leaves the elements on the page on unlocked master spreads:
    myPageItemsOnNormalSpreads.locked = true;

    Now for the GREP part:
    app.findChangeGrepOptions.includeMasterPages = true;
    app.findGrepPreferences = changeGrepPreferences = null;
    app.findGrepPreferences.findWhat = "USA";

    Research on "all open document" level
    Which returns an array of arrays:
    var myTarget = myDocuments.findGrep ();

    Flattening of myTarget Bay:
    var flattenedFoundArray = [];

    for (var n = 0; n < myTarget.length; n ++) {}
    flattenedFoundArray = flattenedFoundArray.concat (myTarget [n]);
    };

    Change the content of the texts found in flat table:
    for (var n = flattenedFoundArray.length - 1; n > = 0; n-) {}
    flattenedFoundArray [n] .silence = "CHINA";
    };

    Unlock all objects on normal spreads:
    myPageItemsOnNormalSpreads.locked = false;

    Reset search GREP and edit the prefs:
    app.findGrepPreferences = changeGrepPreferences = null;


    //---------------------------------------------------------------------------------------- -------------------------------

    myDocuments var = app.documents.everyItem ();
    var myLayers = myDocuments.layers.everyItem ();

    Locked text spreads masters frameworks are not affected.
    If you want to unblock, please add something like this:

    Unlock all items page of each document of spreads and master spreads (optional):
    myDocuments.pageItems.everyItem (.locked = false);

    var myPageItemsOnNormalSpreads = myDocuments.spreads.everyItem ().pageItems.everyItem ();

    Unlock the layers (optional)
    myLayers.locked = false;

    Lock all elements of page level first on normal spreads
    This leaves the elements on the page on unlocked master spreads:
    myPageItemsOnNormalSpreads.locked = true;

    Now for the GREP part:
    app.findChangeGrepOptions.includeMasterPages = true;
    app.findGrepPreferences = changeGrepPreferences = null;
    app.findGrepPreferences.findWhat = 'Washington DC';

    Research on "all open document" level
    Which returns an array of arrays:
    var myTarget = myDocuments.findGrep ();

    Flattening of myTarget Bay:
    var flattenedFoundArray = [];

    for (var n = 0; n < myTarget.length; n ++) {}
    flattenedFoundArray = flattenedFoundArray.concat (myTarget [n]);
    };

    Change the content of the texts found in flat table:
    for (var n = flattenedFoundArray.length - 1; n > = 0; n-) {}
    flattenedFoundArray [n] .silence = "Beijing."
    };

    Unlock all objects on normal spreads:
    myPageItemsOnNormalSpreads.locked = false;

    Reset search GREP and edit the prefs:
    app.findGrepPreferences = changeGrepPreferences = null;


    //===============================================================================

    only what I can do is to repeat and repeat again

    is this another perfect solution to do?

    Thank you

    Teetan

    Try this,

    findChange("USA", "CHINA");
    findChange("Washington DC", "Beijing");
    
    function findChange (findWhat, changeContent){
        var myDocuments = app.documents.everyItem();
        var myLayers = myDocuments.layers.everyItem();
        //Locked text frames on master spreads are not touched.
        //If you want to unlock them you have to add something like this:
        //Unlock ALL page items in every document on spreads and master spreads (optional):
        myDocuments.pageItems.everyItem().locked = false;
        var myPageItemsOnNormalSpreads = myDocuments.spreads.everyItem().pageItems.everyItem();
        //Unlock the layers (optional)
        myLayers.locked = false;
        //Lock all first level page items on normal spreads
        //That leaves the page items on master spreads unlocked:
        myPageItemsOnNormalSpreads.locked = true;
        //Now for the GREP part:
        app.findChangeGrepOptions.includeMasterPages = true;
        app.findGrepPreferences = changeGrepPreferences = null;
        if(findWhat)app.findGrepPreferences.findWhat = findWhat;
        //Do the search on "all open document" level
        //That will return an array of arrays:
        var myTarget = myDocuments.findGrep();
        //Flattening the myTarget array:
        var flattenedFoundArray = [];
        for(var n=0;n=0;n--){
            if(changeContent)flattenedFoundArray[n].contents = changeContent;
            };
        //Unlock all objects on normal spreads:
        myPageItemsOnNormalSpreads.locked = false;
        //Reset GREP find and change prefs:
        app.findGrepPreferences = changeGrepPreferences = null;
    }
    

    Vandy

  • GREP search for all characters

    (Indesign CS6, Windows 7)

    For a book that I'm layout, the author marked text that should be indented like this:

    [indent]

    < paragraph >

    < paragraph >

    ...

    [indent]

    (Of course, in an ideal world, the Publisher would have charged the author simply use a word for this function.)

    I made a for the text indented paragraph style. I wanted to replace it in one shot, GREP search:

    (\[indent\]) ([.| \s|\r]+) (\[/indent\]) the middle part meaning one or more (+) of any character (.) or space or paragraph return. Replace it with:

    $2 and the paragraph style (getting rid of the markers at the same time).

    Nothing has been found. I changed it to (\[indent\])([\w|\s|\r]+) (without the end marker [indent], to see what would happen) and now he found something - but stop at the first mark of punctuation (only reaching no not the end marker). So I tried to fill in punctuation: (\[indent\)] ([\w|\.|-, |: | \s|\r]+]) and each time more was found (by the way,------. here means a complete stop). If it works more or less.

    The problem is, is a technical manual and most equations etc are in the text that should be indented, so there are a lot of characters who are neither letter or number. And of course you can not call it a clean solution.

    It's the kind of string search and replace I would also use on many other projects. Does anyone know a better solution? Now, 'any character' doesn't seem to work, there at - it a code for "any character being not not a letter or number? Thanks in advance.

    Try (? s)(\[indent\]\r?) (.+?) (\[/indent\]\r?)

    The (? s) runs on single line mode so it can be found through several paragraphs and the (. +?) is the shortes match between the tags. I've included returns after the tags, if there has, based on your example that the tags are separate paragraphs. If they are at the end of the paragraph that you want to keep, remove the \r? to avoid losing the paragraph breaks.

  • Grep search / text search + spent research

    Is it a way to erase the previous GREP search / text (search/replace) searches for 'search' and ' change in "boxes? Is - this specific document or a matter of preference ID?

    Find-Change.png

    These lists are stored in the file InDesign SavedData (part of the prefs.). You can remove them by closing the ID and by renaming or deleting the file to your user library (it's a file hidden, by the way). You will also lose your list open the recent item when you do this, but probably nothing else you won't miss.

    See replace your preferences for the location of the file.

  • Search / replace the text and then apply ParaStyle

    Hello world

    Any thing we can find text like "[FT], [FBI], [FISH]" and apply a paragraph style "FISH_Text note, BList", only once.

    We have all files MS is going this kind of circumstances, not just any style of paragraph apply in these files-MS.

    Screen shot 2012-03-28 at 5.03.52 PM.png

    Thank you! I appreciate your help and explanation Adv.

    I see that you asked this over a week ago. Sorry for not noticing - who should post disappeared from the page fast actual coverage.

    It didn't need to script in itself. Using GREP find/replace, search for this:

    \[FT\] (.)

    and replace with this:

    $1

    -with your paragraph style defined in the change Format field.

    Script unproven to do lots of these (warning: I do this as I type):

    var changelist = [ [ "FT", "Footnote"], [ "FBL", "BList"], ["FISH", "FISH_Text"] ];
     app.findGrepPreferences = null;
     app.changeGrepPreferences = null;
    
     app.changeGrepPreferences.changeTo = "$1";
    
    for (i=0; i		   
  • Need help with the GREP search delete numbers

    Hello everyone,


    I have the text with the following reference numbers, I need to remove the numbers before each start of paragraph, but some figures following the space, some of the figures are without space. Please help me remove these figures with GREP or MS Word search or other means

    Before:

    1 Apple

    2Ant

    4 animals

    55 flowers

    56Doctor

    466 painters

    467Teacher

    After:

    Apple

    Ant

    Animals

    Flowers

    Doctor

    Painters

    Teacher

    Thank you
    Siva

    Try this GREP and replace it with nothing:

    {^ \s{0,}\d+\s{0,}

  • Application updates in bold and in italics while doing a search/replace on the contents of merged data

    Hello
    Wonder kind knowledgeable people if you can help me with a question find/replace.

    I'm doing a fusion of data of book content in indesign, where my data merge file is a simple text csv file that is delimited by tabs. I have two things (almost like here) I would like to make to specific parts of the text, but do not know how to achieve this.

    -First of all, I would like to preserve the words/phrases of form 'italic', but it's obviously lost in a csv file.  Is there anyway that I can mark these words so a search/replace can make this italic of the word.  Im hoping that there is a solution that looks something like this;
    for example.  Content of the book is 'the italics of the word needs to be adjusted.
    Original content is modified to be "the word $Italic $ $ needs to be adjusted", so that a dollar sign encapsulates the word in italics.
    Then I am able to merge data from the csv file and somehow make a search/replace words/phrases that are wrapped by the dollar sign.  So, do a find/replace all the words/phrases that satisfy this condition and then apply italic to all the words between the dollar signs.

    -My other question is that I use the ' |' character in my text to determine paragraph separators.  I then do a find/replace after you import the text to replace all occurrences of ' |' for the paragraph separator (a kind of symbol $, a representative character in the menu drop down to the right of the change to). It works fine, but I would like to make a "BOLD" format paragraph separator so that it can better distinguish the separation of text sections.

    But this is different from my problem "italic" above, since I am trying to apply a "BOLD" format to the character "change to", rather than something that exists in my original csv.

    Hope I think, but I'd be happy to provide you with screenshots etc. (when I get home at )
    Best Rgds
    L

    two solutions.

    for the solution of italics, I would say that the OP has answered his own question with one exception - do not use the symbols dollar, instead use = or another character that is not reserved by GREP.

    the solution I would use for italics would be a GREP search once the merger completed. Take a look at the picture to see what I did.

    the second solution: styles GREP.

    This means that the text will have a paragraph style are entrusted to him. make a style and character called "BOLD" in this style, the only thing to change is located in basic character formats, set the bold font style. might even make the character another example cyan color is more easily strucure.

    Then go to the paragraph style options, click on GREP styles and correspond to the following screengrab

    the advantage with a GREP style is that once the vertical bar (|) is replaced, the GREP style bold is lost; and that means less post processing and not needing a second search of the text - it's all living.

  • Grep search for Roman numerals

    Hi, Indesigners...

    Can someone help me with a grep search to get all the numerals in a text?

    Thank you

    Maria

    You can search for \b[ivxclm]+\b, which translates as "any whole word which consists of one or one of the ivxclm of letters", which corresponds to i, vi, xli, but he also mic and vix. So make only the interactive search and replacements.

    Peter

  • With the help of markers of reference in a GREP search

    In a document of 300 pages, with hundreds of notes, I want to insert thin spaces between single endquotes and reference markers. The easiest way seemed a GREP search and repace. I search (\')(~F) and replace it with $1 ~ <$ 2. The result is ' ' (endquote-thin space-endquote). When I try to replace the AB to A-thin space-B in the same way, the result is good. So what goes wrong? ([I also tried ~] for the endquote.)

    (By the way, I have a workaround, but I want to understand how GREP search work.)

    Notes are not really part of the semi-official GREP definition, and I imagine that Adobe programmers had to fix some workarounds to make it work at all. They are not characters simply unique (quotes, spaces and possibly text are variable) but 'contains' a lot more information, as do the anchored objects. This could be the reason why they are not fun to play with GREP regular operations.

    In this particular case, you can bypass searcing for the marker reference code and replace. Search

    (\') (?=~F)

    and replace with

    $1 ~.

    The combo (? = ~ F) will be of find, but do not include the reference code and so much work around the problem.

  • A question of character grep find/replace script

    Hello

    I'm changing the FindChangeList.txt on javascript in indesign cs4 to allow me to automate some grep commands, but we have a problem: in indeisgn if I use the search/replace tool, it works fine, but it doesn't work on the script.

    is what I'm trying to change all instances of + (plus) in a document ± but it seems that the script is read as "nothing more nothing, how to recognize the + as a symbol rather than as a command?

    the line that I use in my code is as follows:

    grep {findWhat: '+'} {changeTo: '±'} {includeMasterPages:true, includeHiddenLayers:true, includeFootnotes:true, wholeWord:false}

    Thank you

    Try {findWhat: "\ +"}

  • Dreamweaver search / replacement of marked text no longer work

    Dreamweaver search / replacement of marked text no longer work

    When I mark a block of text and begin to replace a single string for example, DW replace only the first is the string a judgment of exploitation

    Try to update your version of DW Adobe - Dreamweaver Support Center: Updaters

Maybe you are looking for

  • Qosmio X 500-165 - how to extend the C drive?

    Just bought the Qosmio X 500-165. Does anyone know how to extend the C drive, I get a sign that it is almost full, despite installing all my programs on the partitioned disks that I created? I need to uninstall the software installed by toshiba? Any

  • Pictures on SD card

    When checking my amount of storage, I noticed that the phone storage showed the pictures in. When I looked, of course, a lot of pictures have been stored on the phone instead of the SD card. I found where the device was set to send pictures on the ph

  • Create/edit task DAQmx vs DAQmxCreateTask

    I just started using Labwindows recently, so I'm a newbie here. You have a configuration great forum and I hope you can help me with that. so, as the title indicates what is the difference between the use of these DAQmxCreateTask(), the functions Loa

  • E-mail problem

    I send an email to 750 people, keep the email reject, because one of the incorrect addressesis.  Can I ask Outlook Express to send to the valid addresses and let me know who he's not going to?

  • How to recover the business version of vista if the computer repair company that repaired your computer only installed the beta version of windows vista?

    is it possible that I can get my home edition of windows vista without return to my computer technician and pay him more money to install the OS good God dam. I got it to repair a file system corrupted 3 days ago. This morning I received the followin