Find & Replace Text

Hello Guys,

I have created Dynamo graph to ‘Find & Replace’ specific text from revit model.
If I run Dynamo graph, then it is showing proper output/result but in revit text value does not change.
I want to change text value from ‘5001’ to ‘X1010’.
Please advise.

Refer below images.

Find & Replace Text.dyn (7.2 KB)

Thank you.

Your Dynamo graph just made a list of strings, you haven’t put it back onto the text notes. Try using the SetText node to change the text of the text note.

1 Like

Hello Ken,

Thank you for your advice.
Not it is working perfect.

1 Like

Hi Nilesh & Ken,

I tried the method, however the result return null, let me know anything wrong with it ?

thank you

1 Like

That node is meant to return a null, the output of the node itself says void. Check the Revit file and see if the text note’s text is updated.

Hi Kenny,

I have checked , it doesn’t update, and there is no error, it say run completed

Your graph is all kinds of confusing with how it is organized. Can you clean up the layout so wires aren’t crossing behind a bunch of different nodes and it is easier to read and show the outputs of each node?

Sure , sorry bout that , here is the front and rear portion

also attached the dyn file

image Replace Text Note Content.dyn (34.9 KB)

I think your problem is that the list of texts has been filtered a few times for which ones have “REMOVED” vs “REMOVE” but you never filtered the elements to the same mask. So instead of changing the text for the elements whose text has “REMOVE”, you are replacing the first 4 elements in All Elements of Category node.

Try adding a List.FilterByBoolMask using the same mask and use the All Elements of Category as the list input.

I filtered twice because “REMOVED” was also containing “REMOVE” ,

I will try find another method to filter only once… and see how it goes…

The method you used was fine. The problem was that you did not filter the elements alongside the text. Just add a separate filter process using the elements as the input and the same mask that you used for the text.

I don’t have the package you used and the Revit file so I can’t test it out but something like this, the green group:

1 Like

That was from bakery package, I can try filter without the package node, and see whether it work …

I think you are misunderstanding your problem. The problem has nothing to do with that side of the graph. Don’t change anything you have right now.

What you need to do is just add the green group alongside what you have.

Please read this carefully and if you do not understand let me know: In your graph you filter the text inside the text notes to only find text that has “REMOVE”, not “REMOVED”. This works fine, do not change that.

But what this means is that the original list of text (not the text notes, just the text) has been filtered. In addition to this, you also must filter the actual text notes using the same filter you applied to the text. That is what the green group does.

Hi Kenny,

Did the filter element along side, but still the same output… hmm

And you have checked inside the Revit file that the text notes still say REMOVE instead of REMOVED? Like I said before, the output of the SetText node is supposed to be null, that should mean it was successful.

yup checked the revit file , still the same …

Hi Kenny, your method worked, just need to filter the element along side

one thing is that text note cant be in a group.


I’ve been trying something that would allow me to remove all of the “.” from our abbreviated word in our drafting views, e.g. TYP. = TYP, STRUCT. = STRUCT, etc. Would I be able to use this to accomplish this?