Find and replace month names
Dear all, I have a few eps files in which month-year format is written like May-12, June-13 etc. I want to change May to Mai, June to Juin etc.
Virender
var myDoc = app.activeDocument;
for (i = 0; i < myDoc.textFrames.length; i++ )
var textArt = myDoc.textFrames[i];
for (j =0; j < textArt.words.length; j++ )
var word = textArt.words[j];
switch (word.contents)
case "May-\d\d": // please advise here
word.contents = "Mai";
break;
case "Mar-\d\d":
word.contents = "Mrz";
break;
case "June-\d\d":
word.contents = "Juin";
break;
alert("Done");
Vielen Dank pixxxel schubser.
I worte below script as per your suggustion and my requirements. Meanwhile this scipt convert English month to german months. Any possibility I can create a script which ask me for German, French and Italy buttons. So if I click on German button, then German's month coding execute and if i click on French then French's month coding execute and so on. I knew it can be done using dialog (in Indesign I sure) but not sure in Illustrator. Kindly advise.
var myDoc = app.activeDocument;
for (i = 0; i < myDoc.textFrames.length; i++ )
var textArt = myDoc.textFrames[i];
for (j =0; j < textArt.words.length; j++ )
var word = textArt.words[j];
word.contents = word.contents.replace ("Mar", "Maz");
word.contents = word.contents.replace ("May", "Mai");
word.contents = word.contents.replace ("Oct", "Okt");
word.contents = word.contents.replace ("Dec", "Dez");
//alert("Done");
Similar Messages
-
A Script to Find and Replace Layer Names
Are there any scripts to find and replace layer names?
There is an excellent script available for Photoshop which allows you to not only replace words in layer names, but also insert words as Prefixes, Suffixes and Sequential Numbers.
The illustrator version of this script only allows sequential numbering: It doesn't offer find and replacing of words.
Ideally, it would be great if there was something that could do multiple find and replaces in one go:
(e.g.
You have layers like this Car, Dog, Bat
You enter: car(Option1), dog(Option2), Bat(Option3)
Your layers then become: Option1, Option2, Option3).big_smile, that's a very good start! Step 1 of Learning How To Script is indeed, adjusting an existing simple script to make it do more complicated things. (And usually then "break something", which is also a required part of the process.)
You are correct in your observation this is repetitive stuff. For one or two different items that wouldn't be a problem, but in longer lists you soon get lost.
The usual way of working with find-change lists is to build an array:
var layernames = [
[ 'FHairBowlBoy *Hair', 'Hairboy1' ],
[ 'FHairCurlyafroBoy *Hair', 'Hairboy2' ],
[ 'FHairSpikyBoy *Hair', 'Hairboy3' ],
The general idea is to loop over all names, check if the current layer name is "layernames[i][0]" (the left column) and if so, rename it to "layernames[i][1]" (the right column). If you know how to write a loop in Javascript, then you can implement this right away.
However ..
A more advanced way to do this doesn't even need loop to over all layernames -- instead you can immediately "get" the correct name per layer! It's magic! Almost!
The trick is to use a Javascript object instead of an array. Javascript objects are nothing special; Illustrator's 'layers' is an array of objects, and each object "layer" has a property "name", whose value you can read and set. What I do here is create a new object, where the "name" part is the original layer name and its value is the new layer name. All you need to check for per each layer is if there is a property 'object.originalLayerName', and if so, assign its value to that layer name.
This looks a bit like the array above, except that (1) you use {..} instead of [..] to create an object, and (2) you add "name:value" pairs instead of "value" only (actually, the 'name' of a value in an array is simply its number).
So this is what it looks like:
// JavaScript Document
var doc = app.activeDocument;
// name indexed object
var layernames = {
'FHairBowlBoy *Hair':'Hairboy1',
'FHairCurlyafroBoy *Hair':'Hairboy2',
'FHairSpikyBoy *Hair':'Hairboy3'
// loop through all layers
for (var i = 0; i < doc.layers.length; i++)
//Set up Variable to access layer name
var currentLayer = app.activeDocument.layers[i];
if (layernames[currentLayer.name])
currentLayer.name = layernames[currentLayer.name];
Enjoy! -
Rename Layers: Find and Replace style renaming
In Illustrator, you can use the following to find and replace layer names:
var doc = app.activeDocument;
// name indexed object
var layernames = {
'Bob':'Bob Front'
// loop through all layers
for (var i = 0; i < doc.layers.length; i++)
//Set up Variable to access layer name
var currentLayer = app.activeDocument.layers[i];
if (layernames[currentLayer.name])
currentLayer.name = layernames[currentLayer.name];
In this script "Bob" will become "Bob Front". Is there something similar for Photoshop. Looking at the Photoshop scripting guide, this script should work as the active App document and layers methods exist in Photoshop.c.pfaffenbichler wrote:
What are
var layernames = {
'Bob':'Bob Front'
and
if (layernames[currentLayer.name])
supposed to do? Is that even JavaScript? …
Hi c.pfaffenbichler, yes, this is pure Javascript.
Try this little example:
var layernames = {'Bob':'Bob Behind'};
alert(layernames['Bob']);
// a variant
layernames['Bob'] = 'Bob in the middle';
alert("a variant: " + layernames['Bob']);
// another variant
layernames.Bob = 'Bob Front';
alert("another variant: " + layernames.Bob);
@big_smile,
your posted script works with photoshop (if you have only artlayers and one or more layers named with Bob)
var doc = app.activeDocument;
// name indexed object
var layernames = {'Bob':'Bob Front'};
// loop through all layers
for (var i = 0; i < doc.layers.length; i++) {
//Set up Variable to access layer name
var currentLayer = app.activeDocument.layers[i];
if (layernames[currentLayer.name]) {
currentLayer.name = layernames[currentLayer.name];
All you have to do is to loop trough all artlayers (and layersets), but here is Javascript a slowly variant. Use ActionManager code instead. You will find many examples here in forum.
Have fun -
Find and replace characters in file names
I need to transfer much of my user folder (home) to a non-mac computer. My problem is that I have become too used to the generous file name allowances on the Mac. Many of my files have characters such as "*" "!" "?" and "|". I know these are problems because they are often wild cards (except the pipe). Is there a way that I can do a find and replace for these characters?
For example, search for all files with an "*" and replace the "*" in the file name with an "@" or a letter? I don't mind having to use the terminal for this (I suspect it will be easier).
Is this possible? Does anyone have any suggestions?
Thank you in advance for any help you may be able to provide.
Mac OS X (10.4.8)Yep.
"A Better Finder Rename" is great for batch file renaming.
http://www.versiontracker.com/dyn/moreinfo/macosx/11366
Renamer4mac may be all you need.
Best check out VersionTracker. In fact everybody should have this site bookmarked and visited daily.
http://www.versiontracker.com/macosx/ -
"Find and Replace" for field names in a fillable PDF
Is it possible to do a "Find and Replace" for the field names in a fillable PDF? For example, I have multiple fields that contain the word "Proposed Insured" as part of the field name and would like to find and replace all of them with "Owner". Is there an easy way to do this?
Not really. Even a script can't just rename a field. It needs to create a
new field on top of the old one, but then you lose all the associated
settings, like validation, calculation, format, keystroke, etc. -
Find and replace value in Delimited String
Hi All,
I have a requirement, where i need to find and replace values in delimited string.
For example, the string is "GL~1001~157747~FEB-13~CREDIT~A~N~USD~NULL~". The 4th column gives month and year. I need to replace it with previous month name. For example: "GL~1001~157747~JAN-13~CREDIT~A~N~USD~NULL~". I need to do same for last 12 months.
I thought of first devide the values and store it in variable and then after replacing it with required value, join it back.
I just wanted to know if there is any better way to do it?for example (Assumption: the abbreviated month is the first occurance of 3 consecutive alphabetic charachters)
with testdata as (
select 'GL~1001~157747~FEB-13~CREDIT~A~N~USD~NULL~' str from dual
select
str
,regexp_substr(str, '[[:alpha:]]{3}') part
,to_date('01'||regexp_substr(str, '[[:alpha:]]{3}')||'2013', 'DDMONYYYY') part_date
,replace (str
,regexp_substr(str, '[[:alpha:]]{3}')
,to_char(add_months(to_date('01'||regexp_substr(str, '[[:alpha:]]{3}')||'2013', 'DDMONYYYY'),-1),'MON')
) res
from testdata
STR
PART
PART_DATE
RES
GL~1001~157747~FEB-13~CREDIT~A~N~USD~NULL~
FEB
02/01/2013
GL~1001~157747~JAN-13~CREDIT~A~N~USD~NULL~
with year included
with testdata as (
select 'GL~1001~157747~JAN-13~CREDIT~A~N~USD~NULL~' str from dual
select
str
,regexp_substr(str, '[[:alpha:]]{3}-\d{2}') part
,to_date(regexp_substr(str, '[[:alpha:]]{3}-\d{2}'), 'MON-YY') part_date
,replace (str
,regexp_substr(str, '[[:alpha:]]{3}-\d{2}')
,to_char(add_months(to_date(regexp_substr(str, '[[:alpha:]]{3}-\d{2}'), 'MON-YY'),-1),'MON-YY')
) res
from testdata
STR
PART
PART_DATE
RES
GL~1001~157747~JAN-13~CREDIT~A~N~USD~NULL~
JAN-13
01/01/2013
GL~1001~157747~DEC-12~CREDIT~A~N~USD~NULL~
Message was edited by: chris227 year included -
I wish to use VBA and Excel to programmatically open numbered Dreamweaver HTML (CS5) and find and replace text in the code view of these files, save and close them.
I have 5000 associations between Find: x0001 and Replace: y0001 in an Excel sheet.
I have the VBA written but do not know how to open, close and save the code view of the ####.html files. Please ... and thank you...
[email protected]This is actually the code view of file ####.html that I wish to find and replace programmatically where #### is a four digit number cataloguing each painting.... In 1995 I thought this was clever... maybe not so clever now :>)) Thank you for whatever you can do Rob!
!####.jpg!
h2. "Name####"
Oils on acrylic foundation commercial canvas - . xx X xx (inches) Started
Back of the Painting In Progress </p> </body> </html>
Warmest regards,
Phil the Forecaster, http://philtheforecaster.blogspot.ca/ and http://phils-market.blogspot.ca/ -
How do I find and replace text in PHP files?
How can I in CS3 make sitewide changes to the text in PHP pages without changing variable names etc that have the same name?
For example if I have an installation of a PHP forum and I want to change every instance of the word 'forum' to 'message board'...
If I used the 'inside tag' search with " as the tag, then if "" contained a variable called 'forum' it would also be changed and therefore corrupt the code....
Is there a simple way around this?
Thanks!
I'm using CS3 on Windows Vista.It looks like you're trying to find and replace source code, so you may be able to look at the various places that are looked at when finding and uncheck the ones that don't apply.
But, if it's all source code then that won't help. One thing that may work is to expand the search option - for example if the work "forum" that you're wanting to change it preceded by another word, or character or something that sets it apart, then do you find on that. You can expand that search phrase as far out in either direction that you need to to make it different, if of course that is practical in your situation.
The only other way I can think of is to somehow create an exception rule, but I'm not sure if that's possible or how to do it. -
Using applescript for Find and Replace All in Pages 2.0
i saw that Pages 2.0 is scriptable
i try to create a script for merge use to find and replace all occurence of a certain string using a script but Pages doesn't seems to respond to "Find" even using "System Events"
how can i do to use this function with a script
Thanx for any help
S.B.
ibook G3 Mac OS X (10.4.6)OK, here's another example. This one gets the text as a string and uses the offset property to find "[", presuming it to be a merge delimiter. (Pages' text doesn't support "offset of").
One failing of this scheme is that the offsets are incorrect if you have inline objects (pictures, shapes, tables, etc.). While it is probably possible to compensate for them, that's a trickier proposition.
<PRE>-- Example merge replacements:
property mergeText : {"[name]", "John Smith", "[address]", "1234 Anystreet"}
on lookup(mergeWord)
set theCount to count of mergeText
repeat with x from 1 to theCount by 2
if item x of mergeText = mergeWord then
return item (x + 1) of mergeText
end if
end repeat
-- If merge field is not found, delete it (replace it with the empty string)
return ""
end lookup
tell application "Pages"
repeat
tell body text of document 1
-- Get text as a string so that "offset of" can be used.
set allText to it as string
set startOffset to offset of "[" in allText
if (startOffset = 0) then
exit repeat
end if
set endOffset to offset of "]" in allText
select (text from character startOffset to character endOffset)
end tell
set mergeWord to contents of selection
tell me to lookup(mergeWord)
set replacement to result
set selection to replacement
if (replacement is "") then
-- Get rid of extra whitespace (space or return)
-- Do it in a "try" block to handle edge cases at start or end of text.
try
set theSel to (get selection)
set ch1 to character before theSel
set ch2 to character after theSel
if ((ch1 is " " or ch1 is return) and (ch2 is " " or ch2 is return)) then
select character after theSel
delete selection
end if
end try
end if
end repeat
end tell</PRE>
Titanium PowerBook Mac OS X (10.4.6) -
Find and replace by text and style
We have a fairly large RH HTML project (300+ topics so far)
most of which have a specific heading in Heading2 style. We want to
change all of these to a style based on Heading2, but not use the
Heading2 style b/c we don't want them to show up in the TOC. I have
created a new style and can obviously open every topic and manually
select and change each one - but I'm hoping that one of your RH
gurus will tell me an easier way. Is there anything comparable to
MS Words Find/Replace that will search the whole project for a
specific word in a specific style?RoboHelp's Multi-File Find and Replace (in the Tools tab)
should be suitable for this job, and you can control each
occurrence as you choose. (Where this RH utility fails is when your
search string might sit on more than one line, which won't be the
case here.)
You'll run two replacement passes (spaces added to < &
> tags for proper viewing in this forum):
Replace < h2 > with < p class=YourNewStyle >
Replace < /h2 > with < /p >
The < h2 > and < /h2 > strings will never be
split between lines, so RH will catch every one.
BTW, Add me to the list of FAR boosters; it'll let you change
case, change file names, etc., etc., etc. Great tool!
Good luck,
Leon -
VBA Word Find and Replace characters but excluding certain characters
I am trying to write VBA code in Word that I will eventually run from a VBA Excel module. The aim of the project is to find specific strings in the open Word document that have length of either one or two characters and are of a certain format, and replace
them with other strings in the same format. This is to do with transposing (i.e. changing the musical key) of chord symbols in a songsheet in Word. The Find and Replace strings are contained in ranges in an Excel workbook, which is why I want to eventually
run the code from Excel. I'm much more experienced in writing VBA code in Excel than in Word, and I'm fairly confident with transferring the 'Word VBA' code into an Excel module.
At the moment I'm trying out code entirely in Word, and I've come across a stumbling block. For example, I want it to Find "A" and replace with "B",
BUT only if the "A" is NOT followed by "#" (sharp) or "b" (flat).
Here is the code I've got in Word VBA, which I obtained by editing code produced by the recorder:
Sub F_R()
'Find text must have specific font
With Selection.Find.Font
.Bold = True
.Underline = wdUnderlineWords
.Superscript = False
.Subscript = False
End With
'Replacement text must have specific font
With Selection.Find.Replacement.Font
.Bold = True
.Underline = wdUnderlineWords
.Superscript = False
.Subscript = False
End With
'Find & Replace strings
With Selection.Find
.Text = "A" 'hard-coded here for testing, but this will
'eventually be referenced to a cell in Excel
.Replacement.Text = "B" 'hard-coded here for testing, but this will
'eventually be referenced to a cell in Excel
.Forward = True
.Wrap = wdFindContinue
.Format = True
.MatchCase = True
.MatchWholeWord = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
For the Find & Replace section I want to do something like:
With Selection.Find
.Text = "A"
.Text <> "A#"
.Text <> "Ab"
.Replacement.Text = "B"
End With
- but this produces a syntax error, presumably because you can have only one .Text line (or it won't accept <>?)
I tried adopting the way of excluding chars when using the Like operator, and while it compiles, it will not replace
any "A":
With Selection.Find
.Text = "A[!b#]"
.Replacement.Text = "B"
End With
I suspect that I'm going to have to change tack completely in the way I'm doing this. Do you have any suggestions, please?
The chord names/symbols are preceded/succeeded by either spaces or paragraph returns and can look like these, for example (all Font Bold and Underlined words only):
C<sup>7</sup>
Dm<sup>7</sup>
Eb<sup>-5</sup>
Bb<sup>+11</sup>
F#m<sup>7</sup>
i.e. [ABCDEFG][b # | optional][m |optional][- + | superscript, optional][2 3
5 6 7 9 11 13 | superscript, optional]
The crux of my problem is that the note A should be treated as entirely distinct from Ab or A# (and similar for other flattened/sharpened notes).
Sorry for long post.Hi Ian,
It is not easy to find Microsoft forums. However this forum is for the Visual Studio Net version.
Try this forum for VBA.
https://social.msdn.microsoft.com/Forums/en-US/home?forum=isvvba
Success
Cor -
Find and Replace text string in HTML
Opps... I hope this forum is not just for Outlook. My Html files reside on my hard-drive. I am looking for VBA code to open specified file names ####File.html and then find and replace text strings within the html for example "####Name" replaced
with "YYYYY"
I drive the "####File.html" names and the find and replace text strings from an Excel sheet. I am an artist and this Sub would give me time to paint instead of find and replace text. Thank you!
[email protected]Hello Phil,
The current forum is for developers and Outlook related programming questions. That's why I'd suggest hiring anybody for developing the code for you. You may find freelancers, for example. Try googling for any freelance-related web sites and asking such
questions there.
If you decide to develop an Outlook macro on your own, the
Getting Started with VBA in Outlook 2010 article is a good place to start from. -
How do I create a multiple find and replace for Excel in AppleScript?
I have a large dataset in Excel that I have to do a multiple find/replace in (changing USPS state abbreviations to their full names). In searching the Microsoft boards--I was directed to use Applescript, and even the documented help with Excel was recommeding this. Unfortunately, there wasn't much help potinting me in the specific direction I needed. Any ideas on how I should write this script?
Thanks!I'm confused as to why Applescript (or any script would be helpful).
You'd have to type the abbreviation and the full name into the script, the same as just using Find and Replace All. You wouldn't gain anything by using a script. Is there more to this task than you've let on?
MacTech has an article on converting from VBA to Applescript, but I'm not sure if it would have any ideas on your specific problem: http://www.mactech.com/vba-transition-guide/index-toc.html -
How to find and replace text in Excel with Automator
I am new to Automator. And I would like some help how I can create a service that will allow me to find and replace certain text in Excel. I noticed that there is an action to do this for Word documents, but not for Excel document.
Any suggestions how I can do this?
Thanks so much for your help.Easiest way to do it is the following:
- Open the PDF file in Acrobat.
- Go to Tools - Forms - More Form Options - Export Data.
- Save the form data as an XML file somewhere on your system.
- Open XML the file in a plain-text editor (I recommend Notepad++).
- Let's say you want to replace all the years in the dates from "2013" to "2014". Do a global Search&Replace of "2013-" to "2014-" (I added the dash just to make sure that only date fields are edited).
- Save the XML file (maybe under a new name).
- Go back to the PDF file, and now go to Tools - Forms - More Form Options - Import Data.
- Select the edited XML file and import it.
- Done! -
Find and Replace text in files
Is there a function that will find and replace a word in a few text files at once. E.G replace the word database1 with database2 without going into each script individually and doing and search and replace.
Andrew, you are being so cruel, hardnuts indeed ;)
I won't mention any names, but at least it's not as cruel as some people saying “You may read DBMS_STATS package specification, at least, to get details, if you're too lazy to read manuals.”
Personally I prefer to use a development tool (TOAD, Pl/Sql Developer) instead of a Text type editor.
Maybe you are looking for
-
Photos does not support external editing like iPhoto. Is there likely to be an upgrade to change this or will I abandon Photos for software that does support editing in Photoshop?
-
How can i use external hard drive with mac and pc!
I've been using a Lacie external hard drive with my mac to keep the itunes library and other things since day one. Since i have a dvd with files for windows and an old pc without a dvd drive, i decided to copy and paste the content of the dvd to the
-
Hello, I´m trying to use an USB OMNIKEY Smartcard 3121 on my MacPro for email encryption in a Citrix Session. If a put the smartcard into the reader, the red light is flashing 1 sec only. The content from the smart card is not delivered into the Citr
-
FCE crashes with canvas playback
I installed FCE 3.5 by bypassing the installation check and everything is fine until I choose canvas playback and FCE crashes evey time. (audio meters are active) In the system settings audio capture is dimmed. There is also an audio plug in that is
-
hi! i'm using awm to build cube, when loading the measures from sales_fact view in the global demo of oracle, log hints "13:05:12 Finished Load of Measures: UNITS from Cube UNITS_CUBE.CUBE. Processed 0 Records. Rejected 222589 Records." i'm assure aw